文档首页> 技术教程> WordPress 数据库瘦身:修订版本与垃圾评论

WordPress 数据库瘦身:修订版本与垃圾评论

发布时间:2025-12-24 18:44        更新时间:2025-12-25 07:48
用了一两年的 WordPress,数据库最占地方的往往不是文章,而是修订版本、垃圾评论和插件留下的临时数据。结果就是 wp_posts 表膨胀好几倍,后台变卡,备份文件一天比一天大。瘦身不难,难在敢动手——所以第一步是备份。 一、先备份 命令行导出完整备份: mysqldump -u用户名 -p 数据库名 > backup-$(date +%F).sql 万一操作失误,用 mysql -u用户名 -p 数据库名 < backup-日期.sql 恢复。备份文件先验证能打开,再动手删数据,导出的 sql 用 gzip 压一下更省空间。这份备份在手,后面的删除语句才敢执行。 二、清理修订版本 每次保存文章都会生成一条修订记录,写得多改得勤的站点,修订能占到 wp_posts 表的大头,固定页面同样会产生修订。先看数量再动手: SELECT COUNT(*) FROM wp_posts WHERE post_type = 'revision'; DELETE FROM wp_posts WHERE post_type = 'revision'; 顺手在 wp-config.php 里加 define('WP_POST_REVISIONS', 5); 限制每篇最多保留五个修订,把增量控制住。编辑时少按几次保存,修订自然就少。 三、清理垃圾评论 wp_comments 是另一个重灾区。已标记的垃圾评论和回收站内容分别删除: DELETE FROM wp_comments WHERE comment_approved = 'spam'; DELETE FROM wp_comments WHERE comment_approved = 'trash'; 删完执行 OPTIMIZE TABLE wp_comments; 归还磁盘空间。防增量靠反垃圾插件加审核开关:评论必须人工通过才显示,来源脏的站点再加验证码。审核开关就在"设置 - 讨论"里,勾选"评论必须经人工批准"即可。 四、顺带清理临时数据 wp_options 表里 _transient_ 开头的数据是各插件留下的临时缓存,可以清理: DELETE FROM wp_options WHERE option_name LIKE '\_transient\_%'; 部分插件随后会自动重建,属正常现象,不用管。插件卸载前先用它自带的清理选项,残留会少很多,临时数据删多了也不心疼,插件会按需重建。 频率不用高:数据库涨到几百兆或后台明显变慢时做一次即可。做完对比一下前后体积,效果立竿见影,备份速度也会跟着快起来;装了页面缓存的,清一次缓存再看效果。瘦身之后再导出导入一遍整库,也是对结果的检验。