【问题标题】:Connecting to MySQL via SSL, using DBExpress使用 DBExpress 通过 SSL 连接到 MySQL
【发布时间】: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 需要这些才能建立其加密连接。

所以我的问题是:

  1. DBX 是否允许我设置加密连接?
  2. 如果是这样,谁能告诉我该怎么做? :)

【问题讨论】:

    标签: mysql delphi ssl dbexpress dbx


    【解决方案1】:
    1. Embarcadero MySQL dbExpress 驱动程序不支持 SSL 连接。虽然这真的很容易实现。您可以将此请求记录到 QC。
    2. 您可以考虑使用 3d 派对产品,例如 AnyDAC。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-17
      • 2023-03-09
      • 2017-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-26
      • 2021-02-09
      相关资源
      最近更新 更多