0°

WORDPRESS数据库冗余数据清理

MYSQL可以说是后端决定速度中最重要的部分,最明显的就是你刚创建博客只有1篇文章的时候和写了1年博客时的加载速度,那真是天壤之别,这就是为什么每次HELLO WORLD都很有快感的原因之一。

虽然有很多清理数据库的插件,但是大发还是喜欢自己使用sql语句定期清理数据库,主要是插件不是所有的表都可以清理,比如OPTIONS表,一般插件是无法清理的。数据库的垃圾数据主要存在wp_posts、wp_postmeta、wp_commetns、wp_commentmeta和 wp_options,另外百度社会化插件也会额外创建两个表。

注意:以下SQL语句都是在前缀为WP的情况下,如果你有做修改请替换成你自己,另外阿里云RDS不支持多条语句一次执行,请分步执行。在执行数据操作时一定要备份数据库,以免发生意外。

删除文章修订版本

DELETE FROM wp_posts WHERE post_type = 'revision';

WP媒体管理器上传图片的时候同事会成才ATTACHMENT文章格式,如果你不需要根据这个检索图片的话也可以删掉。

DELETE FROM wp_posts WHERE post_type = 'attachment';

WP_POSTMETA这里是重灾区,可以执行以下命令

DELETE FROM wp_postmeta WHERE meta_key = '_edit_lock';

DELETE FROM wp_postmeta WHERE meta_key = '_edit_last';

DELETE FROM wp_postmeta WHERE meta_key = '_revision-control';

DELETE FROM wp_postmeta WHERE post_id NOT IN (SELECT post_id FROM wp_posts);

DELETE FROM wp_postmeta WHERE meta_key = '_wp_old_slug';

DELETE FROM wp_postmeta WHERE meta_key = '_revision-control';

DELETE FROM wp_postmeta WHERE meta_value = '{{unknown}}';

WP_COMMENTS删除所有垃圾评论

DELETE FROM wp_comments WHERE comment_type = 'trash';

WP_COMMENTMETA 一般来说直接删掉这个表就可以了,我是完全不使用这货的,如果你使用了COMMENTMETA存储信息请谨慎执行此句

TRUNCATE TABLE `wp_commentmeta`

WP_OPTIONS

尤其是使网易云音乐和HERMIT两个插件的,都会在WP_OPTIONS表中产生大量垃圾数据。

DELETE FROM wp_options WHERE option_name LIKE '_transient_%';

DELETE FROM wp_options WHERE option_name LIKE '_transient_timeout_%'

这样会删除所有临时数据,包括未过期的,谨慎使用。

另外AKISMET不但会减慢WORDPRESS评论提交速度而且会产生大量打击数据。建议使用AJAX评论提交并删除此插件。

另外如果你后台勾选了任何人都可以注册话你会发现你多了无数个用户,删除用户就不需要使用SQL语句了。

一般来说如果你经常清理的话可能感觉不出速度,但是如果你很久或者从来没清理过,肯定能感受到速度的提升。

另外就是当你文章非常多的时候,可以关闭搜索功能,这货是非常耗费资源的。

使用WP CLEAN UP

可以在后台直接搜索WP CLEAN UP进行安装,或者下载WP CLEAN UP后,解压并上传到 /wp-content/plugins/ 目录,然后在后台“插件”那里启用。

插件也是执行以上语句,所以清理时也请备份数据库,以免发生意外。

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论