zoukankan      html  css  js  c++  java
  • 一个简易的MySQL性能查询脚本

    如下:

    #!/bin/sh
    mysqladmin -P3306 -uroot -p'password'  -r -i 1 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
    ",innodb_lor,innodb_phr);
    }}'

    输出如下:

    这个脚本主要利用了mysqladmin提供的功能

    -r, --relative      Show difference between current and previous values when
                          used with -i. Currently only works with extended-status.
    extended-status       Gives an extended status message from the server

    ext是extended-status的缩写~

  • 相关阅读:
    简单dp总结
    一、极限总结
    最短路径之差分约束
    软工个人总结
    BETA事后总结
    BETA(7)
    BETA(6)
    BETA(5)
    Go 中的字符串相关操作
    Go 中的异常/错误处理
  • 原文地址:https://www.cnblogs.com/ivictor/p/5345217.html
Copyright © 2011-2022 走看看