MySQL服务器已经消失,但脚本仍然正常运行

时间:2013-08-20 12:33:43

标签: php mysql pdo

我有一个在Xampp本地运行的webapp,它通过PDO使用mysql。

我有时会在页面上收到此警告;

 Warning: PDO::__construct(): MySQL server has gone away in C:\xampp\htdocs\myapp\functions\classes.php on line 101

我总是在脚本运行后取消设置pdo对象,并在另一个页面上实例化一个新对象。 实际的脚本似乎总是正常运行,但出现时错误非常烦人。刷新页面通常会让它消失一段时间。

我猜这是因为没有正确删除pdo对象(即,在取消设置对象后连接仍然存在)。当我尝试使用另一个pdo对象时,它最终会超时导致错误。

使用后解决此问题/取消设置pdo对象的最佳方法是什么?

1 个答案:

答案 0 :(得分:9)

确保PDO :: ATTR_PERSISTENT为false

解决此问题的最佳方法可能是捕获PDOException并重新连接。