tps+qps+mysql_实时获取MySQL的TPS、QPS(输出到屏幕)

本文提供了一个bash脚本,用于每秒获取MySQL的TPS(事务处理速度)和QPS(查询处理速度),并在屏幕上直接显示。在遇到如主库大事务导致从库延迟等问题时,该脚本能帮助判断是挂起还是执行缓慢。同时,作者提到从库system lock状态可能是由于双一配置导致,并提供了临时解决方案。
摘要由CSDN通过智能技术生成

这个脚本挺好用的,例如我们在主库执行了一个大事务,结果导致从库的show slave status\G 一直卡在 system lock状态,我们用下面这个脚本就能知道到底是hang住了,还是只是执行缓慢(反应在脚本执行结果里面就是qps\tps是不停变动的)。

当然,从库一直处于system lock 状态,一般是因为我们从库也设置双1导致,只要临时将双1改掉即可很快解决掉slave lag的问题。

脚本如下:

#!/bin/bash

# 每秒钟获取一次MySQL运行的TPS、QPS,直接输出到屏幕

# Date: 2017/03/25

#

source /etc/profile

USER=’root’

PASSWD=’123456′

if ! mysqladmin -u $USER -p$PASSWD ping > /dev/null 2>&1 ; then

exit 10

else

mysqladmin -u$USER -p$PASSWD 2>/dev/null extended-status -i1|awk ‘BEGIN{local_switch=0;print “QPS   Commit Rollback   TPS    Threads_con Threads_run \n——————————————————- “}

$2 ~ /Queries$/            {q=$4-lq;lq=$4;}

$2 ~ /Com_commit$/         {c=$4-lc;lc=$4;}

$2 ~ /Com_rollback$/       {r=$4-lr;lr=$4;}

$2 ~ /Threads_connected$/  {tc=$4;}

$2 ~ /Threads_running$/    {tr=$4;

if (local_switch==0)

{local_switch=1; count=0}

else {

if (count>10)

{count=0;print “——————————————————- \nQPS   Commit Rollback   TPS    Threads_con Threads_run \n——————————————————- “;}

else {

count+=1;

printf “%-6d %-8d %-7d %-8d %-10d %d \n”, q,c,r,c+r,tc,tr;

}

}

}’

fi

原创文章,作者:lirulei,如若转载,请注明出处:http://www.178linux.com/74876

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值