ZeosLib与MYSQL的共享内存协议?

时间:2011-10-10 04:18:04

标签: mysql delphi shared-memory lazarus zeos

我启动了本地MYSQL服务器,并启用了共享内存协议。 如何使用ZeosLib连接到我的服务器?我在哪里指定它使用共享内存?

我正在使用Lazarus(freepascal),尽管Delphi(可能)的指示相同。

2 个答案:

答案 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属性一样。