mysql.connect_timeout PHP 选项是否导致 MySQL 服务器连接在 60 秒后超时?

Barbara Streisand
发布: 2024-10-18 22:10:30
原创
338 人浏览过

Is the mysql.connect_timeout PHP Option Causing MySQL Server Connection Timeouts After 60 Seconds?

MySQL Server 断开连接问题:超时后 60 秒断开连接

问题:

我发现一个以前运行正常的 SQL 查询现在在 60 秒后超时并抛出错误。尽管查询很慢,但它是作为一项夜间作业的一部分运行的,因此它本身并不是问题(所以请不要建议我优化它)。

通过从 PHP 运行 "select SLEEP(120);",我可以一直重现该错误,如下所示。然而,从 MySQL 客户端运行相同语句是成功的(返回 0)。我尝试调整 wait_timeout(设置为 28800),但没有成功。我还重新启动了数据库服务器和计算机本身。

我总是超时刚好 60 秒,这让我认为它可能是设置问题,而不是资源受限问题。

我正在运行:

  • Windows 服务器 2003
  • MySQL 5.1.36-community
  • PHP 5.3

以下是我的测试代码、输出和 SHOW VARIABLES 的结果。

... 代码、输出和 SHOW VARIABLES 如下所示 ...
登录后复制

答案:

php 选项 mysql.connect_timeout 是导致此问题的原因。它不仅用于连接超时,也用于等待来自服务器的第一个响应。你可以这样增加它:

ini_set('mysql.connect_timeout', 300);
ini_set('default_socket_timeout', 300); 
登录后复制

以上是mysql.connect_timeout PHP 选项是否导致 MySQL 服务器连接在 60 秒后超时?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!