升级完成wordpress到wpmu 1.5.1, 删除spam用户
Blog on blog July 15th, 2008
升级完成了,似乎没出现什么问题,如果发现问题这几天再修复。
一些无聊的家伙利用wordpress漏洞大量注册一些空的用户,导致mysql内充满了垃圾,并且由于mysql的垃圾表太多导致一些wordpress操作失败,出现某些错误,例如回复的时候变成了白屏,我用live writer发表的时候xmlrpc出错等。
要清理数据发现wpmu的数据库做法是每个用户创建一堆表,删除很不方便,只好通过脚本来清理那几千个垃圾用户的表。 wpmu的这个设计我很不欣赏。
参考了月光的脚本:http://www.williamlong.info/archives/1215.html 我简化修改为了以下的代码,注意我是硬编码的,我事先查询了wp_blogs表,决定删除blog_id从86到2149的表。月光的代码更通用些,但查询数据库太多,我的mysql上运行很慢还出错。
<?php
for ($blogid = 86; $blogid < 2150; $blogid++) {
print “DROP TABLE IF EXISTS wp_”.$blogid.”_comments;”;
print “DROP TABLE IF EXISTS wp_”.$blogid.”_links ;”;
print “DROP TABLE IF EXISTS wp_”.$blogid.”_options ;”;
print “DROP TABLE IF EXISTS wp_”.$blogid.”_postmeta ;”;
print “DROP TABLE IF EXISTS wp_”.$blogid.”_posts ;”;
print “DROP TABLE IF EXISTS wp_”.$blogid.”_terms ;”;
print “DROP TABLE IF EXISTS wp_”.$blogid.”_term_relationships ;”;
print “DROP TABLE IF EXISTS wp_”.$blogid.”_term_taxonomy ;”;
} ?>
这个脚本产生mysql 脚本(e.g. php delwptable.php > deltabs.sql),用mysql的source 命令执行产生的脚本可以删除那些垃圾表。当然最后还得手工删除主表中的垃圾数据。
升级参考了我自己过去升级到1.3的办法:
http://dev.robertmao.com/2007/12/25/upgrade-wpmu-to-version-13/
和这篇:
http://ocaoimh.ie/2008/05/12/wordpress-mu-151/
注意要在wp-config.php中添加两行新的东西,如果不添加在登陆到wp-admin的时候会给出警告。
define(’SECRET_KEY’, ‘r5bWN)@4vHTAIHsyqzUDsI^n’);
define(’SECRET_SALT’, ‘NZxMyH@56M%WxpTfdhA4C7KO’);
用livewriter发表文章的时候报告一个错误,还需要研究怎么回事。
About








































































安装了wp super cache, 看看效果…
原来你的站用的是wpmu啊?wpmu不是需要额外交费才可以使用的么?
另外,wpmu主要是使用多用户的,个人博客使用此软件的原因是什么呢?(猜测是因为你个人维护了多个博客)
回复确实很慢,而且不知是否是采用了本地失去,我回复时已经有3个回复,但是我的回复插入在中间
测试一下回复
貌似正常,但还是很慢…
回复是正常了…但是很慢!!!!!!!
还有待调整…
你不是要优化 MySQL 么?
怎么看不到那个帖子了?
某个怪异的原因导致那篇帖子成了unpublished. :(
请教几个问题…
1.你用WP MU..如果博客要绑定顶级域名..你用什么插件?
前提是不是一定要独立IP?
2.直接将域名A记录解析到服务器IP就可以了?
@Mao, 参考我另外一个blog的这篇文章:
http://dev.robertmao.com/2007/06/28/enable-top-domains-support-for-individual-wordpress-multiuser-blogs/