简单粗暴的 Typecho 数据库清理工具。
你肯定遇到过这种情况:插件卸载了,数据库表还赖着不走。时间长了,一堆 xxx_logs、yyy_cache 在那占地方,看着就烦。
这插件就是帮你一键清理这些残留表的,顺便猜猜它们原来是干嘛用的。
以前的同类工具只看表名,比如表里有 link 就说是友链插件,但其实不准。Sweep 会同时检查表结构:
- 高置信度(绿色):表名像,而且字段里真有
url、target这些特征字段,八九不离十 - 中置信度(黄色):表名匹配,但字段不太典型,可能猜对
- 低置信度(灰色):只是名字有点像,旁边会标个"(猜)",你自己判断
目前能识别的包括:友链、百度推送、缓存、AI评论、相册、统计、用户扩展、支付、短链接、投稿、日志这些。如果你的插件不在列表里,会显示"未知插件"。
- 下载,文件夹重命名为
Sweep - 丢到
/usr/plugins/ - 后台启用,在"控制台"菜单里找到"数据库清理"
进去就看到所有非 Typecho 核心表的列表。核心表(contents、comments、users 等)不会显示,误删风险为0。
每张表旁边有:
- 查看内容:看表结构和前50条数据,确认一下是不是垃圾
- 清空:保留表,删掉所有数据(适合想重新开始但保留表结构的场景)
- 删除:整个表 drop 掉,不可恢复
操作前都有 confirm 弹窗,手滑了还能取消。
- 表名白名单过滤,核心表绝对动不了
- SQL 注入防护(正则校验表名)
- CSRF Token 验证
- 操作后自动跳转提示结果
删表不可逆! 虽然做了各种保护,但建议操作前还是顺手备份一下数据库,万一删错还能救。
特别是"清空"和"删除"按钮挨得近,别点错了。
- Typecho 1.1/1.2/1.3 测试通过
- MySQL/MariaDB(其他数据库没试过)
- PHP 7.4+
有 bug 或识别不准的表,提 Issue 就行。最好附上表结构和表名,我加到指纹库里去。
MIT 协议,随便用,出问题别找我(记得先备份)。