上一期【美创运维日记|pt-archiver助你成为一个优雅搬运工】中我们介绍了如何做一个优雅搬运工,这一期给大家介绍如何做一个查找机器。
现实运维中面对着这样一个问题,随着业务不断运行,表的数量越来越多。如何快速根据我们条件的查找到对应的表呢?
(虽然可以通过SQL语句也可以进行实现ヾ(o???)?ヾ)
但是这里给大家推荐pt-find工具,更方便大家来进行查找 mysql 表,并对符合条件的表执行指定的命令。
pt-find工具
模板:
pt-find [OPTION...] [DATABASE...]
常用参数列表
图1:常见参数列表
那我们学会了秘籍,下面我们根据几个实际环境进行学习 ~
范例
1. 查找库中1天以前创建的 InnoDB 的表 ,并打印
注:
默认区分大小写(InnoDB与InnoDb不同),使用--case-insensitive参数
2. 查找库中1天以前更改过的数据库名字匹配%hostsops%的并且引擎为 MYISAM 的表,并将表的引擎更改为InnoDB 引擎
3. 查找库中a库和b库中的空表,并删除
4. 查找库中超过100M的表
5. 查找库中所有的表并且打印出表大小(数据加索引),并且自动排序
6. 执行插入操作
以上,pt-find 工具常用的场景均已涉及,包括查找最近创建的表、表大小并可进行批量操作等等,使用前需提前测试并熟悉相关工具。
(免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。 )