pt-mext
并排对比多份 MySQL SHOW GLOBAL STATUS 采样结果。
语法
pt-mext [OPTIONS] -- COMMAND将 mysqladmin extended 等程序的重复输出列化(columnize)显示。
从 mysqladmin 获取输出:
pt-mext -r -- mysqladmin ext -i10 -c3从文件获取输出:
pt-mext -r -- cat mysqladmin-output.txt用法示例
以下命令依靠 mysqladmin 已有的连接配置(选项文件或本机 socket)来取 SHOW GLOBAL STATUS; pt-mext 本身不直接连库,只负责把 COMMAND 的重复输出并排整理。命令可直接复制,替换其中的采样间隔、次数与关注指标即可。
场景:只看关键指标的差值
-r 把相邻采样相减,再配合 grep 只保留想观察的计数器(如 QPS、连接数、慢查询),避免被几百行状态淹没:
pt-mext -r -- mysqladmin ext -i10 -c3 | grep -iE 'Queries|Threads_connected|Slow_queries'场景:定位连接数是否暴涨
每 2 秒采一次、共 5 次,并排看 Threads_* 系列的变化趋势,快速判断是否有连接泄漏或突发:
pt-mext -r -- mysqladmin ext -i2 -c5 | grep -iE 'Threads_(connected|running|created)'场景:观察缓冲池读压力
盯住 Innodb_buffer_pool_read*,看逻辑读命中与物理读的增长差,判断是否该扩容缓冲池:
pt-mext -r -- mysqladmin ext -i5 -c3 | grep -iE 'Innodb_buffer_pool_read'场景:先抓快照再离线分析
高峰期不便一直开着采样时,先把多次采样落盘,事后再用 pt-mext 并排分析:
mysqladmin ext -i10 -c5 > mysqladmin-output.txt
pt-mext -r -- cat mysqladmin-output.txt功能说明
pt-mext 执行你指定的命令(COMMAND),逐行读取其输出并把每一行写入一个临时文件。 遇到空行时,认为新一次 SHOW GLOBAL STATUS 采样开始,于是创建新的临时文件。 处理结束后,它把所有临时文件并排连接在一起并打印结果。 如果指定了 --relative 选项,打印前会先用后一次采样减去前一次采样(求差值)。
选项
| 选项 | 说明 |
|---|---|
--help | 显示帮助并退出 |
-r, --relative | 每列减去前一列(显示差值而不是原始值) |
--version | 显示版本并退出 |
其他信息
系统要求:需要 Bourne shell(
/bin/sh)和seq程序。环境变量:本工具不使用环境变量(所有 Percona Toolkit 工具均支持
PTDEBUG=1调试,注意调试输出会暴露命令行中的密码)通用说明:已知问题的反馈方式、PTDEBUG 调试安全提示、系统要求基线,见 通用说明。
更多细节请阅读 官方文档。