首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不断丢失wordpress中的数据库

问不断丢失wordpress中的数据库
EN

Stack Overflow用户
提问于 2013-02-09 06:38:40
回答 1查看 1.2K关注 0票数 0

我有一个很长的PHP脚本(大约持续10分钟,涉及大量curl调用),我可以将其作为Cron作业运行,也可以直接运行。我使用$wpdb全局变量进行SQL调用,并且不断丢失mysql数据库,并显示"WordPress数据库错误MySQL服务器已消失“错误。

我尝试了其他人的建议,将wp-db.php中的wait_timeout值更改为3600,但它仍然是一样的。还有什么我能做的吗?

EN

回答 1

Stack Overflow用户

发布于 2013-02-09 16:30:42

显而易见的是,这意味着MySQL关闭了连接,要么是因为您发送的查询比max_allowed_packet大,要么是因为您在两个查询之间花费的时间比wait_timeout长。

假设是超时,

将$wpdb->query("set wait_timeout = 1200")放在脚本开头附近-这样可以省去修改WP核心文件的麻烦。

如果这仍然不起作用,试试MySQL的“ping”功能。在wp-includes/wp-db.php中,找到function query(,在其下方是带有mysql_query的行-在其上添加行

代码语言:javascript
复制
mysql_ping( $dbh );

Ping检查连接并尝试重新连接-我发现它在长时间运行的脚本中非常有用。

希望其中的一些东西(a)有意义,(b)对你有效。为了方便其他读者阅读本文,不要忘记升级Wordpress会覆盖您对核心文件所做的任何更改。

链接:http://blog.webyog.com/2009/09/02/%E2%80%9Cmysql-server-has-gone-away%E2%80%9D-part-2-session-timeout/和http://php.net/manual/en/function.mysql-ping.php

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14782494

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档