优化WordPress数据库只需6步,给网站提点速吧!

WordPress的文章、评论等很多数据都是存放在数据库的,所以搭建wordpress网站的时间,网站的空间不需要多大,而数据库一定要充足,而在WordPress数据库中主要使用 wp_posts 表来存储日志,页面,附件,导航菜单等数据,根据使用的时间越来越长,堆积的数据越来越多,从而运行起来也越来越慢,那么我是十分有必要对 WordPress数据库来进行整体的优化下。

优化前后

亲测优化前SQL数据库为5.69M,优化后SQL数据库为2.2M,优化了竞达3倍大小。

优化步骤

1、温馨提醒优化之前切记先备份下数据

2、删除所有日志修订 影响wordpress运行速度的根源在于日志的修订记录,一百多篇文章会有一千多条的日志修订的记录,所以此步优化必须做,提速效果非常明显。

执行以下SQL语句:

DELETE a,b,c FROM wp_posts a LEFT JOIN
wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID
= c.post_id) WHERE a.post_type = 'revision'
DELETE a,b,c FROM wp_posts a LEFT JOIN
wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID
= c.post_id) WHERE a.post_type = 'revision'
DELETE a,b,c FROM wp_posts a LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id) LEFT JOIN wp_postmeta c ON (a.ID = c.post_id) WHERE a.post_type = 'revision'

3、优化 wp_posts 表 写文章的时候进行的插入、更新或删除等都会产生不同大小的记录碎片,整理碎片这步要做。执行以下SQL语句:

OPTIMIZE TABLE
wp_posts;
OPTIMIZE TABLE
wp_posts;
OPTIMIZE TABLE wp_posts;

4、删除所有垃圾留言 这个可以在后台一条一条的删除,也可以到 MySQL执行下也行:

DELETE FROM wp_comments WHERE
comment_approved != '1';
DELETE FROM wp_comments WHERE
comment_approved != '1';
DELETE FROM wp_comments WHERE comment_approved != '1';

5、删除没有的标签 有些文章删除了,但标签还在,WordPress不会自动删除的,我们手动清理下吧, 执行以下SQL语句:

DELETE a,b,c
FROM
wp_terms AS
a
LEFT JOIN wp_term_taxonomy AS c ON a.term_id = c.term_id
LEFT JOIN
wp_term_relationships AS b ON b.term_taxonomy_id = c.term_taxonomy_id
WHERE
(
c.taxonomy = 'post_tag' AND
c.count =
0
);
DELETE a,b,c
FROM
wp_terms AS
a
LEFT JOIN wp_term_taxonomy AS c ON a.term_id = c.term_id
LEFT JOIN
wp_term_relationships AS b ON b.term_taxonomy_id = c.term_taxonomy_id
WHERE
(
c.taxonomy = 'post_tag' AND
c.count =
0
);
DELETE a,b,c FROM wp_terms AS a LEFT JOIN wp_term_taxonomy AS c ON a.term_id = c.term_id LEFT JOIN wp_term_relationships AS b ON b.term_taxonomy_id = c.term_taxonomy_id WHERE ( c.taxonomy = 'post_tag' AND c.count = 0 );

6、删除没用的 postmeta 记录 当文章的记录删除后,还有日志扩展表postmeta的数据还没有删除,也人工清理下吧,执行以下SQL语句:

DELETE pm FROM wp_postmeta pm LEFT JOIN
wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL
DELETE pm FROM wp_postmeta pm LEFT JOIN
wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL
DELETE pm FROM wp_postmeta pm LEFT JOIN wp_posts wp ON wp.ID = pm.post_id WHERE wp.ID IS NULL

通过以上数据库命令优化,你的数据库是不是已经很小了呢,网站速度是不已经得到提升了呢,记得不要让自己的网站太过臃肿,以免影响访问哦!

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
Nobody looks down on you because everybody is too busy to look at you.
没谁瞧不起你,因为别人根本就没瞧你,大家都很忙的
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容