简单的 WordPress 数据库优化

2年前 (2023-01-03)阅读336回复0
翱翔MJ
翱翔MJ
  • 管理员
  • 注册排名1
  • 经验值3650
  • 级别管理员
  • 主题600
  • 回复325
楼主
☰ 快捷目录
  • 删除自动存档日志
  • 文章附表锁定字段
  • 更改网站域名
  • 无用的RSS Feed Cache
  • 删除自动存档日志

    WordPress 在你编辑文章的时候,会自动存档,防止因为电脑突然关闭造成的数据丢失,其实这是一个很好的功能,但是并不是没篇文章都会用到,时间久了就会有很多无用的存档,我们可以使用SQL语句清理下:


    DELETE FROM wp_posts WHERE post_type = 'revision';


    文章附表锁定字段

    当你编辑一篇文章的时候,WordPress会锁定这篇文章,确保版本的一致性,只能你一个人编辑,在 wp_postmeta 表里面就会添加 _edit_lock 数据,有时候 WordPress 会忘记删除这个记录,我们也可以清理掉。


    DELETE FROM wp_postmeta WHERE meta_key = '_edit_lock';DELETE FROM wp_postmeta WHERE meta_key = '_edit_last';DELETE FROM wp_postmeta WHERE meta_value = '{{unknown}}';


    更改网站域名

    更改网站的域名可以在后台的常规设置里面更改,但是你这样修改了动态地址,文章里面的很多链接是不会修改的,所以我们还需要批量替换成新的网址。

    使用下面的SQL将文章的 GUID 也进行修改。


    UPDATE wp_posts SET guid = replace(guid, 'http://www.demo.com','https://www.123.com');
    
    使用下面的语句将文章里所有旧域名替换为新域名。 
    
    UPDATE wp_posts SET post_content = replace(post_content, 'http://www.demo.com', '

    无用的RSS Feed Cache

    如果你在wp_options表中发现了大量option_name包含“_transient”的数据,那就是它没跑了。先说说这玩意儿是干嘛用的,这玩意就是WordPress程序中引入RSSFeed后产生的缓存。正常的WordPress使用过程中,会不断产生这些数据,久而久之,就非常之庞大了。这时我们就要定时清理一下,优化也很简单,在PHPMyAdmin中的wp_options,执行下面mysql语句即可:

    DELETE FROM wp_options WHERE option_name REGEXP '_transient_';


    0
    回帖

    简单的 WordPress 数据库优化 期待您的回复!

    取消
    载入表情清单……
    载入颜色清单……
    插入网络图片

    取消确定

    图片上传中
    编辑器信息
    提示信息