您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“MySQL如何實現實時計算QPS、TPS的SHELL腳本”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“MySQL如何實現實時計算QPS、TPS的SHELL腳本”這篇文章吧。
第一例:
#cat mysql_qps.sh
#!/bin/bash
MYSQL_CON="/usr/local/mysql/bin/mysql"
TIME="$1"
OLD_QUERY=`$MYSQL_CON -e "show global status like 'questions';" | awk -F[' ','s'] 'NR==2{print $3}'`
echo "$OLD_QUERY"
sleep "$TIME"
NEW_QUERY=`$MYSQL_CON -e "show global status like 'questions';" | awk -F[' ','s'] 'NR==2{print $3}'`
echo "$NEW_QUERY"
TIME_QUERY=`expr $NEW_QUERY - $OLD_QUERY`
QPS=`expr $TIME_QUERY / $TIME`
echo "$QPS"
查看接下來10s的QPS:
# ./mysql_qps.sh 10
第二例:通過mysqladmin間隔讀取mysql的status信息,計算差值,得出統計信息。
# cat mysql_qps-tps.sh
#!/bin/bash
/usr/local/mysql/bin/mysqladmin -uroot -p'root' 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;
}
}
}'
運行結果如下:
# ./mysql_qps-tps.sh
QPS Commit Rollback TPS Threads_con Threads_run
-------------------------------------------------------
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
3104 292 400 692 350 3
2488 246 305 551 350 2
3394 331 440 771 350 3
3066 279 395 674 350 3
3400 316 442 758 350 2
3082 278 415 693 350 3
3533 275 430 705 350 3
2638 249 356 605 350 2
3819 315 523 838 350 2
3206 287 449 736 350 2
2949 259 408 667 350 2
-------------------------------------------------------
QPS Commit Rollback TPS Threads_con Threads_run
-------------------------------------------------------
2985 284 399 683 350 2
3042 288 402 690 350 2
3208 282 431 713 350 4
3232 290 437 727 350 2
3220 287 435 722 350 5
3270 308 431 739 350 2
4022 373 546 919 350 2
5497 521 721 1242 350 3
328 18 32 50 350 2
4606 434 602 1036 350 2
1070 101 129 230 350 2
-------------------------------------------------------
-------------------------------------------------------
-------------------------------------------------------
-------------------------------------------------------
以上是“MySQL如何實現實時計算QPS、TPS的SHELL腳本”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。