我刚刚发现我的旧 MediaWiki 充斥着垃圾信息,名为“text”的数据库表(包含页面内容)大小为 3GB。我手动删除了所有垃圾页面,但是:
- 桌子还是原来的大小。
- 我不知道它是怎么达到 3GB 的。垃圾邮件并不多(大约一百个中等大小的页面)
我怎样才能摆脱这种困境?
如果你想查看 wiki,就在这儿。数据库是MySQL 5.0.75。
答案1
当您使用 Web 界面从 mediawiki 删除内容时,它实际上并没有被删除(同样,当在 wikipedia 上删除页面时,它们会永远保留,管理员仍然可以查看它们并取消删除它们)。
如果您想要删除条目,则必须编写一些 SQL(使用语句delete
;例如delete from <table> where id = <spam post ID>;
针对每个 ID)。
答案2
您应该使用维护目录中的相应脚本。它存在是有原因的。
答案3
我编写了一个 shell 脚本来清理 MediaWiki 数据库中的用户活动和账户: