Mysql数据库优化--慢查日志分析工具
安装pt-query-digest工具
1.1、快速安装(注:必须先要安装wget)
wget https://www.percona.com/downloads/percona-toolkit/2.2.16/RPM/percona-toolkit-2.2.16-1.noarch.rpm && yum localinstall -y percona-toolkit-2.2.16-1.noarch.rpm
1.2、检查是否安装完成:
命令行中输入:pt-summary
显示如下图所示:说明安装成功!输入【[root@node03 mysql]# pt-query-digest --help】
1.3、工具使用简介:
pt-summary –help
wget http://percona.com/get/pt-summary
- 1、查看服务器信息
命令:pt-summary
-
2、查看磁盘开销使用信息
命令:pt-diskstats -
3、查看mysql数据库信息
命令:pt-mysql-summary --user=root --password=123456 -
4、分析慢查询日志
命令:pt-query-digest /data/mysql/data/db-3-12-slow.log -
5、查找mysql的从库和同步状态
命令:pt-slave-find --host=localhost --user=root --password=123456 -
6、查看mysql的死锁信息
pt-deadlock-logger --user=root --password=123456 localhost -
7、从慢查询日志中分析索引使用情况
pt-index-usage slow_20131009.log -
8、查找数据库表中重复的索引
pt-duplicate-key-checker --host=localhost --user=root --password=123456 -
9、查看mysql表和文件的当前活动IO开销
pt-ioprofile -
10、查看不同mysql配置文件的差异
pt-config-diff /etc/my.cnf /etc/my_master.cnf -
11、pt-find查找mysql表和执行命令,示例如下
查找数据库里大于2G的表:
pt-find --user=root --password=123456 --tablesize +2G
查找10天前创建,MyISAM引擎的表:
pt-find --user=root --password=123456 --ctime +10 --engine MyISAM
查看表和索引大小并排序
pt-find --user=root --password=123456 --printf “%T\t%D.%N\n” | sort -rn -
12、pt-kill 杀掉符合标准的mysql进程
显示查询时间大于60秒的查询
pt-kill --user=root --password=123456 --busy-time 60 --print
kill掉大于60秒的查询
pt-kill --user=root --password=123456 --busy-time 60 --kill -
13、查看mysql授权
1、pt-show-grants --user=root --password=123456
2、pt-show-grants --user=root --password=123456 --separate –revoke -
14、验证数据库复制的完整性
pt-table-checksum --user=root --password=123456 -
15、附录: