Wordpress外贸建站教程:虚拟主机清理巨型数据库表的方法

继续分享wordpress外贸建站教程。之前悦然跨境出海帮客户检查网站时发现了一个非常大的数据库表,居然有几十个G,根据我之前的经验,这可能又是WooCommerce生成的日志文件。

Wordpress外贸建站教程:虚拟主机清理巨型数据库表的方法-悦然跨境出海
Wordpress外贸建站教程:虚拟主机清理巨型数据库表的方法-悦然跨境出海

Wordpress外贸建站教程:虚拟主机清理巨型数据库表的方法

悦然跨境出海在之前的WordPress网站维护教程中已经介绍过了,不过上面教程说的是服务器的处理方法,在宝塔模板上关闭一下数据库的日志就会自动清除。该客户使用的是godaddy的虚拟主机,而虚拟主机因为功能和性能都受限,所以没办法像宝塔面板那样去操作。下面分享适合虚拟主机的操作方法。

步骤一:清理数据表

Wordpress外贸建站教程:虚拟主机清理巨型数据库表的方法-悦然跨境出海
TRUNCATE `wp_actionscheduler_logs`;

登陆phpmyadmin,然后输入上面的语义句,注意把表前缀wpxx换成你自己的。

步骤二:取消Wpxx_actionscheduler_actions

Wordpress外贸建站教程:虚拟主机清理巨型数据库表的方法-悦然跨境出海
DELETE FROM `wpxx_actionscheduler_actions` WHERE `status` = 'complete';
DELETE FROM `wpxx_actionscheduler_actions` WHERE `status` = 'canceled';
DELETE FROM `wpxx_actionscheduler_actions` WHERE `status` = 'failed';

继续在数据库中依次执行上面三行语句,同样注意把wpxx表前缀换成你自己的。

小结:这里需要注意的是,上面的语句在执行时可能并不会马上完成,具体时间要看你的数据库表大小,而且根据悦然跨境出海的经验来看,上面的语句执行可能并不会100%成功,因为数据太大,虚拟主机的性能又受到了限制,所以在执行时有比较大的概率是要被卡死的。如果实在不行我也想不出太好的办法了,比较好的办法是把当前的网站导出备份,重置wordpress再从备份恢复。然后大家在做wordpress建站之前还要做好预防,特别是网站使用了WooCommerce插件的情况,预防的方法看下一步。

步骤三:定期清理数据库表

这里直接上代码,大家可以根据你的网站情况选择适合的方案,任择一个就可以了。

// 每日自动清理数据表 Scheduled Actions
add_filter( 'action_scheduler_retention_period', 'cw_action_scheduler_purge_daily' );
function cw_action_scheduler_purge() {
 return DAY_IN_SECONDS;
}
// 每周自动清理数据表 Scheduled Actions
add_filter( 'action_scheduler_retention_period', 'cw_action_scheduler_purge_weekly' );
function cw_action_scheduler_purge() {
 return WEEK_IN_SECONDS;
}

上面的代码需要放到wordpress建站主题的funcations.php文件中,或者是添加到Code Snippets插件中。

购物车
优惠劵
搜索