【发布时间】:2013-08-20 06:17:40
【问题描述】:
我在 Ruby 中创建了一个小脚本,以查看是否可以在 Amazon Ec2 AMI (Ubuntu 64b) 上操作 mysql 数据库中的数据。我在实例的安全组下的权限中添加了 SSH 和 MYSQL。我能够将脚本连接到数据库(使用 mysql2 gem),但它不再起作用,我不明白为什么我一直有错误:
mysql2/client.rb:58:in `connect': 无法连接到 MySQL 服务器 'XX.XXX.XX.XXX (60) (Mysql2::Error)
这是我正在使用的脚本
require 'rubygems'
require 'mysql2'
require 'net/ssh/gateway'
gateway = Net::SSH::Gateway.new('ec2-XX-XX-XX-XX.compute-1.amazonaws.com',
'ec2-user',
:keys => ['/XXXX/XXXXX.pem'])
port = gateway.open("XX.XXX.XX.XXX",3306,3307)
baseDeDatos= Mysql2::Client.new(:host => "XX.XXX.XX.XXX", :database=> "x" ,:username => "x", :password => "x")
puts "I made it!"
baseDeDatos.close
gateway.close(port)
gateway.shutdown!'
有没有人可以解决我的问题?我很困惑,因为它几天前有效,但没有(我没有更改任何权限或任何东西)。当然我检查了MYSQL数据库是否正常工作。
提前致谢。
【问题讨论】:
标签: mysql ruby linux amazon-ec2 mysql2