我启动了本地MYSQL服务器,并启用了共享内存协议。 如何使用ZeosLib连接到我的服务器?我在哪里指定它使用共享内存?
我正在使用Lazarus(freepascal),尽管Delphi(可能)的指示相同。
答案 0 :(得分:3)
即使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;
希望这会以某种方式帮助你。我没有测试过,因为我没有适当的环境。
答案 1 :(得分:0)
IF ZeOS支持它,它可能是一个可以添加到(TZ)连接选项的文本属性。就像其他clientlib属性一样。