如何使用blazer ruby gem连接到启用ssl的云sql实例



我有一个rails应用程序,它托管在谷歌云flex应用程序引擎中。应用程序使用ssl证书连接到云sql实例(mysql5.7(。rails应用程序成功连接到启用ssl连接的云sql实例。database.yml配置如下。

development:
adapter: mysql2
database: databasename
host: 10.2.224.3
username: root
password: password
sslca: config/server-ca.pem
sslkey: config/client-key.pem
sslcert: config/client-cert.pem

但当我把blazer gem安装到我的应用程序中时。https://github.com/ankane/blazer#mysql-1

Blazer只能使用云sql的私有ip地址来连接云sql实例,这允许不安全的连接。Blazer.yml配置如下

data_sources:
my_source:
url: mysql2://root:password@10.2.224.3:3306/databasename

当我在我的云sql实例中启用ssl时。Blazer无法连接到我的启用ssl的云sql实例,并且得到了"SSL连接错误:无法获取证书";错误消息。在blazer.yml中进行如下配置。

data_sources:
my_source:
url: mysql2://root:password@10.2.224.3:3306/databasename?config/sslca=server-ca.pem&config/sslcert=client-cert.pem&sslkey=config/client-key.pem

如何配置rails gem blazer的blazer.yml,使其连接到启用ssl的云sql-mysql实例?或者我可能会问我什么时候将rails应用程序安装到flex应用程序引擎中。如何在flex应用程序引擎中找到我的ssl证书文件的路径。位于rails的config文件夹中。

如有任何建议,不胜感激。

在您的DB URI中,我看到以下内容:

...?config/sslca=server-ca.pem&...

我认为应该是:

sslca=config/server-ca.pem

相关内容

  • 没有找到相关文章