MySQL常用性能指标捕获命令

注意

以下命令都按照mysql8.0版本的输出和日志格式,如果输出和格式不一致,需自行调整awk,awk语法可自行百度,谨记!!!

每秒输出一次show global status输出

mysqladmin -uroot -p ext -i1 | awk '
/Queries/{q=$4-qp;qp=$4}
/Threads_connected/{tc=$4}
/Threads_running/{printf "%5d %5d %5d\n", q, tc, $4}'

计算show processlist每一种状态出现的次数,并按次数排序

mysql -uroot -p -e 'show processlist' | grep State: | sort | uniq -c | sort -rn

通过查询日志计算每秒的查询次数

[root@www mysql]# cat www.log |grep Query |awk -F: '{sum[$1":"$2]++}END{for(i in sum)print i,sum[i]}' | sort $1
2019-09-28T08:24 8
2019-09-28T08:25 1
2019-09-28T08:26 1
2019-09-28T08:29 3
2019-09-28T08:30 6
2019-09-28T08:31 2
2019-09-28T08:36 4
2019-09-28T08:39 1
2019-09-28T08:41 1
2019-09-28T09:00 7
[root@www mysql]#  

通过慢查询日志计算每秒慢查询次数

[root@www mysql]# cat www-slow.log |grep Time: | awk -F: '{sum[$2":"$3]++}END{for(i in sum)print i, sum[i]}' | sort$1
 2019-09-28T08:33 1
 2019-09-28T08:39 1
 2019-09-28T08:41 1
 2019-09-28T09:00 6

后续有用到的会继续补充

发布了200 篇原创文章 · 获赞 26 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/why444216978/article/details/103438539