试图从数据库中删除数千名用户

时间:2014-02-27 00:06:38

标签: mysql joomla

我检查了我的一个Joomla!网站今晚和我的恐怖发现,我有成千上万的垃圾邮件注册。我无法在网站的一个页面上显示所有用户,因为它崩溃了,对于服务器来说显然太多了。

即使我每页显示100个用户,我也有500页,直到下周才会删除它们。所以我想也许我可以从数据库中做到。同样的事情发生了,如果我有30个用户显示,则有超过1000页。所以我将设置更改为显示1000个用户,因为页面再次崩溃,我无法删除1000个用户。

所以我想也许我可以从用户表中备份我自己的帐户。但是,我是否必须创建另一个用户表才能重新安装我的帐户?我希望你理解我的困境

3 个答案:

答案 0 :(得分:2)

如果你想删除除你自己以外的所有用户,你可以这样做:

DELETE FROM users WHERE email != 'your_email';

请注意,这将删除所有其他帐户

请务必先备份数据库。

如果您要删除具有特定扩展名的电子邮件:

DELETE FROM users WHERE email LIKE '%.co.uk';
DELETE FROM users WHERE email LIKE '%gmail.com';

答案 1 :(得分:2)

我可能会做的是转到phpmyadmin并导出您想要保留的任何数据,即使是一次。

然后清空表(即删除所有行)。

然后将导出的所有数据导入空表。

这只是你要保留的一条记录@Sparkup的回答会更快。

您使用的是用户个人资料插件吗?如果是这样,你也想要删除任何记录。

然后至少启用recaptcha,但如果你真的不想要用户注册,请在全局配置中关闭它。

答案 2 :(得分:1)

Mysql删除将是一个不错的选择。从终端(linux)或cmd(windows)访问Joomla数据库会很快。使用验证码可能有助于在一定程度上阻止垃圾邮件。