专业wordpress网站维护,帮您解决wordpress网站遇到的各种问题
-
专业 专注wordpress相关服务
-
高效 快速处理最快1天完成
微信联系
微信联系
微信联系
微信联系,详细沟通
继续分享wordpress网站维护教程。之前悦然帮客户检查网站时发现了一个非常大的数据库表,居然有几十个G,根据我之前的经验,这可能又是WooCommerce生成的日志文件。
本站之前的wordpress网站维护教程中已经介绍过了,不过上面教程说的是服务器的处理方法,在宝塔模板上关闭一下数据库的日志就会自动清除。该客户使用的是godaddy的虚拟主机,而虚拟主机因为功能和性能都受限,所以没办法像宝塔面板那样去操作。下面分享适合虚拟主机的操作方法。
TRUNCATE `wp_actionscheduler_logs`;
登陆phpmyadmin,然后输入上面的语义句,注意把表前缀wpxx换成你自己的。
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表前缀换成你自己的。
小结:这里需要注意的是,上面的语句在执行时可能并不会马上完成,具体时间要看你的数据库表大小,而且根据悦然wordpress建站的经验来看,上面的语句执行可能并不会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插件中。