当前时间: 2026-06-04 18:40:51
分类:办公文件
评论(0)
我用AI手搓了一个数据归档工具上期提到了数据归档的事情,我翻了翻网上归档MySQL的工具,在百度搜索漫天的广告中大浪淘金,终于是让我找到了一款开源工具,pt-archiver()。这边吐槽一下百度的吃相过于难看,全是广告...pt-archiver是业内公认的MySQL数据迁移工具,不仅高效而且安全,可回档,可批量迁移。但是有一个缺点,就是pt-archiver是命令行工具,没有桌面端,这对于我们平常习惯了window可视化操作的人来说非常不友好,出错概率高。在翻遍了全网确定没有可视化版本之后我决定自己动手。原理是用户通过前台操作后端调用python执行命令行语句来实现可视化操控pt-archiver进行数据归档。开发工具我用的是Cluade Code +Deepseek,我告诉他服务器是什么系统,python是什么版本,pt-archiver是什么版本,我想做一个可视化pt-archiver的网站,pt-archiver的基本功能都要有,而且还要支持复用功能,数据库信息维护,日志保存等功能。大概过了半小时,他就运行完告诉我已经完成了任务,我又给了他git仓库的地址,告诉他把启动脚本和代码都传上去 我要打包到服务器上去。 看得出是我想要的效果,但是前前后后也调试了十几版才能稳定运行,将服务器报错信息发给它,它修改代码,服务器重新拉取,运行;也是花了半天时间。大概功能如下:pt-archiver有2种归档模式,一种是迁移并删除原表数据,另外一种是迁移后确认完成再删除原数据。可以预演成功后再正式执行,这边也是找了一些数据进行了验证:这边我还做了部署更新,只要我更新了代码,一键就能帮我完成拉取代码,重启系统,省得我再登上系统操作。后续还要考虑是否新增定时执行的功能,还要加上数据检测,数据库达到一定数据量后自动归档,以后就再也不用考虑数据库爆掉的问题了。
基本
文件
流程
错误
SQL
调试
- 请求信息 : 2026-06-05 01:58:14 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/711958.html
- 运行时间 : 0.211207s [ 吞吐率:4.73req/s ] 内存消耗:4,777.01kb 文件加载:145
- 缓存信息 : 0 reads,0 writes
- 会话信息 : SESSION_ID=0bbd133525bec34b1f30f877dbbf7ec7
- CONNECT:[ UseTime:0.000811s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
- SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001189s ]
- SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.006459s ]
- SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.003143s ]
- SHOW FULL COLUMNS FROM `set` [ RunTime:0.001155s ]
- SELECT * FROM `set` [ RunTime:0.000512s ]
- SHOW FULL COLUMNS FROM `article` [ RunTime:0.001179s ]
- SELECT * FROM `article` WHERE `id` = 711958 LIMIT 1 [ RunTime:0.001053s ]
- UPDATE `article` SET `lasttime` = 1780595894 WHERE `id` = 711958 [ RunTime:0.020568s ]
- SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.007318s ]
- SELECT * FROM `article` WHERE `id` < 711958 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001045s ]
- SELECT * FROM `article` WHERE `id` > 711958 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000988s ]
- SELECT * FROM `article` WHERE `id` < 711958 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002550s ]
- SELECT * FROM `article` WHERE `id` < 711958 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.004152s ]
- SELECT * FROM `article` WHERE `id` < 711958 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.013550s ]
0.214511s