MySQL表只有在修复后才会崩溃



我正在使用WordPress和MySQL。我的网站最近崩溃了(由于数据库内存不足)

一旦站点启动,它看起来很好,但以防万一我在DB上运行了"修复"(来自phpmyadmin)。之后,它破坏了我的"wp_posts"表。我再次从旧版本恢复了DB——表看起来很好。我再次进行了"修复",结果同一张桌子坏了。

我在VPS服务器上。所以我没有root访问权限,但我可以让网络管理员检查一下。

知道是什么原因造成的吗?/如何解决?

谢谢。

这是MySQL服务器配置问题。我也遇到过同样的问题。在我的案例中,这是由于一个名为myisam_sort_buffer_size的MySQL系统变量被设置为一个小得离谱的值(4096)。这干扰了repair table的操作。在我的案例中,wp_posts文件和其他文件使用了MyISAM访问方法。如果您使用InnoDB,您将希望查看控制该访问方法的变量,而不是MyISAM。

向MySQL服务器发出以下命令:

show  variables like '%buffer_size'

然后寻找看起来很低的变量。

您可能还想查看MySQL服务器错误日志文件。

如果您自己运行服务器,请小心进行配置更改:首先阅读文档页面。http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html

如果您的托管提供商运行服务器,请输入请求票证,要求将其上报给了解MySQL的支持人员,并具体说明问题所在。

最新更新