升级完成wordpress到wpmu 1.5.1, 删除spam用户
Published on Mon 14 Jul 2008 11:07 ( 1 year, 8 months ago)
升级完成了,似乎没出现什么问题,如果发现问题这几天再修复。
一些无聊的家伙利用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发表文章的时候报告一个错误,还需要研究怎么回事。
Related posts:
- 个人KB, 群组KB的一些随想
- Revolution .vs. Evolution
- URL中slug的作用以及一个设计思路
- 好久没写blog了...
- 继续个人站点(blog?)狂想
- 测试macbook上用ecto写blog
- 近日blog流水账
- blog更新变缓(的借口)...
- 在blog上添了个twitter 和 greader的玩具功能
- 本blog已被和谐,墙内请用psf.appspot.com访问
Search related in web:
Custom Search