gpt4 book ai didi

mysql - 保持连接 - mysql

转载 作者:可可西里 更新时间:2023-11-01 07:02:30 25 4
gpt4 key购买 nike

我已经设置了我使用名为 Connect 的按钮创建的 delphi 应用程序。单击它后,它会执行以下代码:

begin
someConnection.Connected:=true;
somecomenziDataSet.Active:=true;
end;

同样,我有一个用于Disconnect 目的的按钮,它做同样的事情,但使用=false;

我的问题是我要连接的数据库托管在共享主机帐户上,mysql 服务器的 wait_timeout 变量设置为 60 秒,interactive_timeout 设置为30秒。如果我 60 秒不使用我的应用程序,这自然会断开连接。

有什么办法可以保持这种联系吗?

托管公司不会更改设置,所以我坚持使用它。

我正在使用 RAD Studio 10 Seattle,dbexpress 组件,TSQLConnection,我的数据库是 mysql

如果我遗漏了任何必要的信息,请在评论中告诉我,谢谢!

最佳答案

您可以使用 TTimer 定期“ping”数据库(例如,给定 60 秒超时,间隔 10-20 秒):

procedure TMyDataModule.ConnectionPingTimer(Sender: TObject);
begin
if not MySQLConnection.InTransaction then
MySQLConnection.Execute('DO 0', nil); // or "SELECT 1" or whatever is cheapest
end;

关于mysql - 保持连接 - mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40615859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com