require 'mysql'
begin connection = Mysql.real_connect( "localhost", "root", "thePassword" ) puts connection.get_server_info connection.list_dbs.each do |db| puts db rescue Mysql::Error => e puts e.errno, e.error ensure connection.close if connection end
require 'mysql'
begin connection = Mysql.real_connect(nil, "root", "thePassword", "mydatabase", nil, '/tmp/mysqld.sock' ) puts connection.get_server_info connection.list_dbs.each do |db| puts db rescue Mysql::Error => e puts e.errno, e.error ensure connection.close if connection end
http://www.tmtm.org/en/mysql/ruby/
require 'mysql'
begin db = Mysql.real_connect( "localhost", "root", "thePassword", "mysql" ) query = "SELECT * FROM user;" print "\n", query, " ", rs.row_count, "\n" rs.each_hash { |h| puts h['name'] }
query = "SELECT COUNT(*) FROM users;" rs = db.query( query ) row = rs.fetch_row puts row.class count = row[0] puts count.class count = count.to_i puts count.class
print "\n", query, " ", count, "\n"
rescue Mysql::Error => e puts e.errno, e.error ensure db.close if db end
chef block of ruby
ruby_block 'mysql_version' do block do require 'mysql' # hack that depends on /etc/mysql/mysql_grants.sql
begin
db = Mysql.real_connect( "localhost", "root", "myPassword" )
puts db.get_server_info
db.list_dbs.each do |db|
puts db
end
con.query("CREATE TABLE IF NOT EXISTS Writers(Id INT PRIMARY KEY AUTO_INCREMENT, Name VARCHAR(25))")
con.query("INSERT INTO Writers(Name) VALUES('Jack London')")
connection = Mysql.real_connect( "localhost", "root", "myPassword", "mysql" )
query = "SHOW TABLES;"
rs = connection.query( query )
print query, " rows: ", rs.num_rows, "\n"
query = "SELECT COUNT(*) FROM users;"
rs = connection.query( query )
print query, " ", rs.num_rows, "\n"
rescue Mysql::Error => e
puts e.errno, e.error
ensure
db.close if db
connection.close if connection
end
end
action :nothing
end