【发布时间】:2011-08-17 16:53:17
【问题描述】:
我想通过 SSL 连接到 MySQL 服务器。更具体地说,我想用 DbExpress 做到这一点。
我过去曾通过ZeosLib 使用 SSL 到 MySQL。效果很好,但是 Zeos 不允许我运行返回多个结果集的存储过程,这是该项目中的一个障碍。
使用 Zeos,我曾经像这样设置 SSL 连接:
Connection := TZConnection.Create(nil);
Connection.Properties.Values['MYSQL_SSL'] := 'TRUE';
Connection.Properties.Values['MYSQL_SSL_CA'] := 'c:/pathtocert/cert.pem';
Connection.Properties.Values['MYSQL_SSL_CERT'] := 'c:/pathtocert/foo.pem';
Connection.Properties.Values['MYSQL_SSL_KEY'] := 'c:/pathtocert/bar.pem';
我发现你可以用 DBX 做类似的事情:
Connection.Params.Values['drivername'] := 'MySQL';
Connection.Params.Values['compressed'] := 'True';
Connection.Params.Values['HostName'] := 'host';
Connection.Params.Values['Database'] := 'dbname';
Connection.Params.Values['user_name'] := 'me';
Connection.Params.Values['Password'] := '...';
Connection.Params.Values['encrypted'] := 'True'; // looks promising!
我看到您可以设置一个名为“加密”的参数,但我不知道如何配置证书的位置。 LibMySQL.dll 需要这些才能建立其加密连接。
所以我的问题是:
- DBX 是否允许我设置加密连接?
- 如果是这样,谁能告诉我该怎么做? :)
【问题讨论】:
标签: mysql delphi ssl dbexpress dbx