2011-08-17 203 views
3

我想通過SSL連接到MySQL服務器。更具體地說,我想用DbExpress做到這一點。使用DBExpress通過SSL連接到MySQL

我以前通過ZeosLib使用過SSL。這很好,但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! 

我看到,你可以設置一個名爲'encrypted'的參數,但我看不到我可以如何配置證書的位置。 LibMySQL.dll需要這些才能設置其加密連接。

所以我的問題是:

  1. 不DBX讓我建立加密引黃?
  2. 如果是這樣,誰能告訴我該怎麼做? :)

回答

1
  1. Embarcadero MySQL dbExpress驅動程序不支持SSL連接。雖然這實際上很簡單。您可以將此請求記錄到QC。
  2. 您可以考慮使用3D聚會產品,如AnyDAC。