我正在尝试对需要用户名/密码和ssl连接的mysql数据库运行迁移。如何引用ssl连接的ca证书?如果我运行以下命令,它将引发一个Error: Sequel::DatabaseConnectionError: Mysql::ServerError::AccessDeniedError: Access denied
sequel -m db/migrations mysql://root:password@localhost/test我尝试在命令行中添加sslca=参数,但似乎不起作用。
更新
是的,很抱歉,如下所示,你可以看到工作和不工作的代码:
1)我使用连接到我的数据库的ruby代码,它工作得很好。
connection = Sequel.mysql2(
"db_name",
:user => "username",
:password => "password",
:host => "host",
:port => "port",
:sslca => File.expand_path(File.join('path', 'to', 'ca.pem')),
:max_connections => 1
)2)下面是不起作用的代码,我试图以--sslca=的形式传递sslca参数,其中带引号和不带引号,但都不能建立连接
sequel -m db/migrations mysql://root:password@localhost/test sslca="path/to/ca.pem"我得到的错误是:
Error: Sequel::DatabaseConnectionError: Mysql2::Error: Access denied for user 'username'@'host' (using password: YES)/path/to/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `connect'发布于 2012-08-22 00:53:31
Sequel的mysql适配器将以下ssl参数传递给ruby-mysql库: sslkey、sslcert、sslca、sslcapath、sslcipher。我不确定仅使用sslca是否足够,您可能还需要其他选项之一。
如果你不能让它与Sequel一起工作,我建议你尝试直接使用ruby-mysql让它工作。如果你能让它在ruby-mysql上运行,但不能在Sequel上运行,请告诉我怎么做,我可能也能在Sequel上运行它。
https://stackoverflow.com/questions/12059075
复制相似问题