我正在尝试使用 rake 任务访问远程 mysql 数据库。我在这里发布我的事件记录连接逻辑
client = ActiveRecord::Base.establish_connection(
:host => "server_ip",
:port => 22,
:adapter => "mysql2",
:pool => 5,
:database => "database_name",
:username => "username",
:password => "password"
)
我正在使用它访问它
client.connection.execute("SELECT * FROM users")
但每次都会出现如下所示的错误
rake aborted!
Lost connection to MySQL server at 'reading initial communication packet', system error: 0
有什么我想念的吗?请建议我正确的方向
请您参考如下方法:
尝试以下操作,
确保 MySQL 使用相同的凭据从控制台连接
确保它在 irb/rails 控制台中连接
如果没有,请在您提到的配置中添加端口号。 MySQL 应该在那个端口运行。
查看用户名和IP在MySQL中的访问权限