繁体   English   中英

PHP Mysqli永久连接错误

[英]Php Mysqli Persistent connection error

我的脚本有时会出现一个问题,通常是我将其放置一段时间(例如5-10分钟)而没有请求时,我会收到此错误:

警告:mysqli_connect()[function.mysqli-connect]:MySQL服务器在第30行的FILE.php中消失了

这是给我错误的代码是这样的:

$ this-> db = mysqli_connect('p:'。$ this-> db_host,$ this-> db_user,$ this-> db_pwd,$ this-> db_name);

该代码包含在一个单例类中,我目前正在使用

  • 阿帕奇2.2.11
  • MySQL 5.1.36
  • PHP 5.3.0

(我使用WampServer 2.0i),但显然我将在最终服务器上使用linux。

谢谢。

很简单... PHP 5.1不支持它

http://php.net/manual/zh/mysqli.persistconns.php

需要PHP 5.3

连接后是否检查错误? 这可能表明需要重新连接。 尽管查看了文档,但似乎无法强迫mysqli创建新连接。

您可以在每次调用数据库之前使用mysqli_ping()检查服务器,但是如果有一堆,那会很麻烦。

如果您管理MySQL服务器或与该人保持良好关系,则要做的另一件事是增加服务器本身的空闲超时时间。

个人而言,恕我直言,持久连接在PHP中是有问题的,除非您的网站流量很高,否则速度的提高不足以使它值得承担麻烦。

检查您的mysql服务器中的超时值,尤其是connect_timeout和wait_timeout。

当Connection通过超时关闭时,您需要重新连接->应该由您的应用程序完成。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM