WordPress是一个十分强大的个人博客系统,所有博客的设置和插件定义都保存在wp_options这个表中,时间长了,来自于皮肤、插件的设置就会使这个表显得臃肿不堪,比较倒霉的是,大部分的皮肤和插件作者并不会在插件被删除时清理那些定义,这部分清理目前只能靠手工完成。
在Wordpress2.9之前,我们有一个十分简单的清理方式:清空wp_options这个表即可。
但之前升级至WordPress 2.9的一些感受中也说了,Wordpress 2.9之后的版本这样做将会使你的博客彻底报废,陷入永远修复的死循环中。
于是,我开始琢磨新的方法。由于Wordpress的数据表内容十分的乱,无法通过表内的数据分析出那些是系统本身的,所以大致思路还是清空wp_options重建,只不过要绕一些弯路罢了。
通过实验,我找到了一个比较简单的方法,不需要导出备份即可清理(当然,小A还是十分建议您备份的)。
PS:以下操作实际总共仅需1分钟即可,由于涉及到数据操作和可能预见的安全性问题,所以我尽可能的将步骤写的详细,大家请耐心读完。
第一步,在根目录下建立一个index.html文件
,写上如下的内容:
博客升级中,请稍后访问
这样做的好处之后你就会知道了
第二步,重命名index.php
这步很关键,因为在数据库被初始化的时候,任何访问的人都可以拿到admin权限,把这个文件改为别人猜不到的名字即可,比如gcygryoxzuyreinreufhreissuhfrixfm8rue.php。注意:文件名中不能有符号,除了最后的.
第三步,关闭所有的插件
然后将现有皮肤切换为默认的WordPress Default。别担心难看,做完前两步后,别人目前是看不到你的博客的。
第四步,批量修改数据表前缀
这步十分关键,请特别留意。
打开任何一个你顺手的SQL工具,把目前的所有表前缀都替换,比如alexblair的表前缀是wp_,那么就修改为wp_bak_依次类推。
第五步,激活初始化功能
还记得之前被重命名的文件么,输入它的地址,例如Aの碎碎念博客就这样输入:
https://www.alexblair.org/gcygryoxzuyreinreufhreissuhfrixfm8rue.php
这时候,是不是出现熟悉的初始化界面了?和新的博客一样输入名字和邮箱地址,这时候它会给你一个admin的帐号和密码。(这回明白我之前要求改名字的原因了把)不要管他,停留在这个页面。
第六步,使用新的表单
回到刚才的SQL工具,刷新一下,是不是出现了一大堆的表,留下wp_options,保留之前自己改过名字的表,其他wp_前缀的表都删除。
然后将之前改过名的表,名字都改回来
第七步,完成
经过上面的一番折腾,剩下的就是扫尾工作了,现在你可以用原来的帐号和密码登入后台,激活之前关闭的插件和皮肤。然后将刚才被改名文件改回index.php
最后确认没有问题了,就可以删除index.html收工了。
最后,小A还是希望大家都看完了全文再进行操作,当然了,对于数据库操作的新手,还是希望做好事前的备份工作。如果期间遇到任何的问题,欢迎回复交流。
4 Comments发表回复
要发表评论,您必须先登录。
发表回复
要发表评论,您必须先登录。
呵呵。这个真得学习一下哈。
对于用大量插件的朋友来说不太适用,重新启用后还要重新做大堆的配置
Dear admin, thanks for providing this blog post. I found it great. Take care,
[…] http://www.alexblair.org/user-alexblair-post-919.html […]