MySQL监控SQL及命中率脚本

Posted Hank.Yoon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL监控SQL及命中率脚本相关的知识,希望对你有一定的参考价值。

[[email protected] scrips]# vi mysqlstat.sh
?
??/export/servers/mysql/bin/mysqladmin -P3306 -uyoon -pyoon -h127.0.0.1 -r -i 2 ext |\
awk -F"|" \
"BEGIN{ count=0; }"\
‘{ if($2 ~ /Variable_name/ && ((++count)%20 == 1)){\
    print "----------|---------|--- MySQL Command Status --|----- Innodb row operation ----|-- Buffer Pool Read --";\
    print "---Time---|---QPS---|select insert update delete|  read inserted updated deleted|   logical    physical";\
}\
else if ($2 ~ /Queries/){queries=$3;}\
else if ($2 ~ /Com_select /){com_select=$3;}\
else if ($2 ~ /Com_insert /){com_insert=$3;}\
else if ($2 ~ /Com_update /){com_update=$3;}\
else if ($2 ~ /Com_delete /){com_delete=$3;}\
else if ($2 ~ /Innodb_rows_read/){innodb_rows_read=$3;}\
else if ($2 ~ /Innodb_rows_deleted/){innodb_rows_deleted=$3;}\
else if ($2 ~ /Innodb_rows_inserted/){innodb_rows_inserted=$3;}\
else if ($2 ~ /Innodb_rows_updated/){innodb_rows_updated=$3;}\
else if ($2 ~ /Innodb_buffer_pool_read_requests/){innodb_lor=$3;}\
else if ($2 ~ /Innodb_buffer_pool_reads/){innodb_phr=$3;}\
else if ($2 ~ /Uptime / && count  >= 2){\
  printf(" %s |%9d",strftime("%H:%M:%S"),queries);\
  printf("|%6d %6d %6d %6d",com_select,com_insert,com_update,com_delete);\
  printf("|%6d %8d %7d %7d",innodb_rows_read,innodb_rows_inserted,innodb_rows_updated,innodb_rows_deleted);\
  printf("|%10d %11d\n",innodb_lor,innodb_phr);\
}}‘

?
?[[email protected] scrips]# sh mysqlstat.sh 
Warning: Using a password on the command line interface can be insecure.
----------|---------|--- MySQL Command Status --|----- Innodb row operation ----|-- Buffer Pool Read --
---Time---|---QPS---|select insert update delete|  read inserted updated deleted|   logical    physical
 17:00:35 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:37 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:39 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:41 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:43 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:45 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:45 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:49 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:51 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:53 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:55 |        1|     0      0      0      0|     0        0       0       0|         0           0
 17:00:57 |        1|     0      0      0      0|     0        0       0       0|         0           0

?
??

以上是关于MySQL监控SQL及命中率脚本的主要内容,如果未能解决你的问题,请参考以下文章

Shell开发MySQL主从监控脚本

如何实时监控mysql中的SQL语句的执行情况

MySQL监控

MySQL监控

性能测试指标及常用监控工具

监控mysql的几个脚本