批量删除wordpress注册用户 清理wp_users和wp_usermeta的Mysql命令

啊老师有一个wordpress网站关闭了用户注册和登录。之前的用户数据就不想要了。因为用户数实在有点多,多到后台发布文章时都会卡。。所以就想办法批量清理掉未发布过文章的用户。开始我想用插件去清理,有个插件叫Bulk Delete,可以达到这个要求。但是使用过后,发现数据量太大。这个插件搞不定啊。只能一次清理1000个,这样来执行。这得清理到啥时候?

于是自己动手丰衣足食,研究了两条命令,直接上Mysql数据库就搞定了。这里把命令分享给大家!

注意:数据库操作前,请备份!请备份!请备份!搞崩了本人不负责哈!

第一条:删除没有文章的用户

DELETE FROM wp_users WHERE ID NOT IN (SELECT post_author FROM wp_posts);

第二条:删除不存在用户的元数据

DELETE FROM wp_usermeta WHERE user_id NOT IN (SELECT ID FROM wp_users);

这样就清理掉了所有没有发布过文章的用户了。清理过之后,一下干掉一百多万条数据,顿时觉得神清气爽!

需要批量删除wordpress注册用户的同学,赶紧用起来吧!

如果你的用户数据在1万以下,推荐用Bulk Delete这个插件去批量删除wordpress注册用户,不用冒风险去搞数据库。