error: 2006 MySQL server has gone away 解决方法,mysqlgone,今天在使用webpy d


今天在使用webpy db时遭遇了error: 2006 MySQL server has gone away 的错误。

刚开始以为是webpy的database类的问题,查了好多资料,发现这个应该不是webpy的问题,而是mysql返回的错误。

有几种情况会导致这个错误:

在一个查询中传递的数据过大,导致 error: 2006 MySQL server has gone away

这种情况下可以通过设置mysql的配置文件my.cnf文件修改下面的选项来修复:

max_allowed_packet=64M

db类在打开连接之后8个小时之内都没有执行任何查询,再次执行查询时会出这个错误。

我遇到的正是这种情况,这种情况比较好的解决方法时,过一段时间给数据库发一个查询,例如 select 1 这样就可以解决了

查询超时导致此错误

这种情况下可以设置mysql的超时时间:

SET @@GLOBAL.wait_timeout=300;SET @@LOCAL.wait_timeout=300;

评论关闭