我啓動了我的本地MYSQL服務器,打開了共享內存協議。 如何使用ZeosLib連接到我的服務器?我在哪裏指定它使用共享內存?ZeosLib與MYSQL的共享內存協議?
我正在使用Lazarus(freepascal),雖然方向與德爾福(可能)相同。
我啓動了我的本地MYSQL服務器,打開了共享內存協議。 如何使用ZeosLib連接到我的服務器?我在哪裏指定它使用共享內存?ZeosLib與MYSQL的共享內存協議?
我正在使用Lazarus(freepascal),雖然方向與德爾福(可能)相同。
即使TZConnection
沒有連接字符串屬性,也可以在TZConnection.Properties
中設置其他連接參數。
我相信你運行你的MySQL服務器這樣
mysqld --skip-networking --shared_memory=1 --shared-memory-base-name='MyMemoryDB'
爲了使您的共享內存連接,你可以嘗試在設計時在Object Inspector中下面的配置行添加到屬性TZConnection.Properties
。 請注意,protocol
必須按原樣設置,並且shared-memory-base-name
必須與您在命令行參數中使用的值相同。默認值是MYSQL,所以如果您在命令行中省略了參數,那麼您應該將以下MyMemoryDB值更改爲MYSQL。
所以在TZConnection.Properties
財產嘗試添加這兩條線
protocol=memory
shared-memory-base-name=MyMemoryDB
或在TZConnection.BeforeConnect
事件處理程序運行時使用
procedure TForm1.ZConnection1BeforeConnect(Sender: TObject);
begin
ZConnection1.Properties.Add('protocol=memory');
ZConnection1.Properties.Add('shared-memory-base-name=MyMemoryDB');
end;
希望這將幫助你以某種方式。我沒有測試它,因爲我沒有適當的環境。
IF ZeOS支持它,它可能是一個文本屬性,可以添加到(TZ)連接選項。就像其他clientlib屬性一樣。