我在单例包中使用AnyEvent :: DBI,并且在许多小时后数据库/查询等中没有活动时,尝试发出查询时出现此错误:
DBD::mysql::st execute failed: MySQL server has gone away at /usr/local/share/perl/5.10.1/AnyEvent/DBI.pm line 98.
一种简单的方法是:连接到DB ==>问题查询==>紧密连接.
这种方式是我在使用DBI时通常使用的方式.
我的问题是,除了创建新的AnyEvent :: DBI实例(新)外,我找不到使用AnyEvent :: DBI重新连接到数据库的方法.
任何建议都会很棒!
解决方法:
根据CPAN上的DBD :: mysql文档,您要使用:
$dbh->{mysql_auto_reconnect} = 1;
这是参考的链接:
http://metacpan.org/pod/DBD::mysql