对正在运行的mysql进行监控,其中一个方式就是查看mysql运行状态。

(1)QPS(每秒Query量)

QPS = Questions(or Queries) / seconds

mysql > show global status like "Question%";

(2)TPS(每秒事务量)

TPS = (Com_commit + Com_rollback) / seconds

mysql > show global status like "Com_commit";

mysql > show global status like "Com_rollback";

(3)key Buffer 命中率

mysql>show global status like "key%";

key_buffer_read_hits = (1-key_reads / key_read_requests) * 100%

key_buffer_write_hits = (1-key_writes / key_write_requests) * 100%

(4)InnoDB Buffer命中率

mysql> show status like "innodb_buffer_pool_read%";

innodb_buffer_read_hits = (1 - innodb_buffer_pool_reads / innodb_buffer_pool_read_requests) * 100%

(5)Query Cache命中率

mysql> show status like "Qcache%";

Query_cache_hits = (Qcahce_hits / (Qcache_hits + Qcache_inserts )) * 100%;

(6)Table Cache状态量

mysql> show global status like "open%";

比较 open_tables 与 opend_tables 值

(7)Thread Cache 命中率

mysql> show global status like "Thread%";

mysql> show global status like "Connections";

Thread_cache_hits = (1 - Threads_created / connections ) * 100%

(8)锁定状态

mysql> show global status like "%lock%";

Table_locks_waited/Table_locks_immediate=0.3% 如果这个比值比较大的话,说明表锁造成的阻塞比较严重

Innodb_row_lock_waits innodb行锁,太大可能是间隙锁造成的

(9)复制延时量

mysql > show slave status

查看延时时间

(10) Tmp Table 状况(临时表状况)

mysql > show status like "Create_tmp%";

Created_tmp_disk_tables/Created_tmp_tables比值最好不要超过10%,如果Created_tmp_tables值比较大,

可能是排序句子过多或者是连接句子不够优化

(11) Binlog Cache 使用状况

mysql > show status like "Binlog_cache%";

如果Binlog_cache_disk_use值不为0 ,可能需要调大 binlog_cache_size大小

(12) Innodb_log_waits 量

mysql > show status like "innodb_log_waits";

Innodb_log_waits值不等于0的话,表明 innodb log buffer 因为空间不足而等待

比如命令:

>#show global status;

虽然可以使用:

>#show global status like %...%;

来过滤,但是对应长长的list,每一项都代表什么意思,还是有必要弄清楚。

一,获取mysql用户下的进程总数

  ps -ef | awk '{print $1}' | grep "mysql" | grep -v "grep" | wc-1

  二,主机性能状态

  # uptime

  [root@ ~]# uptime

  13:05:52 up 53 days, 52 min, 1 user, load average: 0.00, 0.00, 0.00

  三,CPU使用率

  # top

  或

  # vmstat

  四,磁盘IO量

  # vmstat 或 # iostat

  五,swap进出量[内存]

  # free

  六,数据库性能状态

  (1)QPS(每秒Query量)

  QPS = Questions(or Queries) / seconds

  mysql > show /*50000 global */ status like 'Question';

  (2)TPS(每秒事务量)

  TPS = (Com_commit + Com_rollback) / seconds

  mysql > show status like 'Com_commit';

  mysql > show status like 'Com_rollback';

  (3)key Buffer 命中率

  key_buffer_read_hits = (1-key_reads / key_read_requests) * 100%

  key_buffer_write_hits = (1-key_writes / key_write_requests) * 100%

  mysql> show status like 'Key%';

  (4)InnoDB Buffer命中率

  innodb_buffer_read_hits = (1 - innodb_buffer_pool_reads / innodb_buffer_pool_read_requests) * 100%

  mysql> show status like 'innodb_buffer_pool_read%';

  (5)Query Cache命中率

  Query_cache_hits = (Qcahce_hits / (Qcache_hits + Qcache_inserts )) * 100%;

  mysql> show status like 'Qcache%';

  (6)Table Cache状态量

  mysql> show status like 'open%';

  (7)Thread Cache 命中率

  Thread_cache_hits = (1 - Threads_created / connections ) * 100%

  mysql> show status like 'Thread%';

  mysql> show status like 'Connections';

  (8)锁定状态

  mysql> show status like '%lock%';

  (9)复制延时量

  mysql > show slave status

  (10) Tmp Table 状况(临时表状况)

  mysql > show status like 'Create_tmp%';

  (11) Binlog Cache 使用状况

  mysql > show status like 'Binlog_cache%';

  (12) Innodb_log_waits 量

  mysql > show status like 'innodb_log_waits';

  开源监控软件

  一,RRDTool

  二,Nagios

  三,MRTG

  四,Cacti

对正在运行的mysql进行监控的更多相关文章

  1. MySQL数据库监控

    MySQL MTOP由PHP和Python开发,所以监控机需要安装PHP运行环境和Python环境.需要的核心包如下: 1.MySQL 5.0及以上(用来存储监控系统采集的数据) 2.Apache 2 ...

  2. 论MySQL的监控和调优

    懂PHP的人一般都懂MySQL这一点不假,大多数书籍里也是这样,书中前面讲PHP后面到数据库这块就会讲到MySQL的一些知识,前几年MySQL一直是PHP书籍的一部分,后来开始从国外翻译了一些专门讲述 ...

  3. MySQL 性能监控 4 大指标

    [编者按]本文作者为 John Matson,主要介绍 mysql 性能监控应该关注的 4 大指标. 文章系国内 ITOM 管理平台 OneAPM 编译呈现.    MySQL 是什么? MySQL  ...

  4. 辉哥用的这种方法实现ZABBIX的MYSQL批量监控

    不错的.集中和分布式,总是一对要解决的问题.应该可以再想更好的策略~~ 一.方案需求及思路 因跑MySQL服务的服务器比较多,并且每台服务器可能会运行多个不同端口的数据库,如果单独手动一台一台去修改a ...

  5. MySQL 性能监控4大指标——第二部分

    [编者按]本文作者为 John Matson,主要介绍 mysql 性能监控应该关注的4大指标. 第一部分介绍了前两个指标:查询吞吐量与查询执行性能.本文将继续介绍另两个指标:MySQL 连接与缓冲池 ...

  6. MySQL 性能监控4大指标——第一部分

    [编者按]本文作者为 John Matson,主要介绍 mysql 性能监控应该关注的4大指标. 第一部分将详细介绍前两个指标: 查询吞吐量与查询执行性能.文章系国内 ITOM 管理平台 OneAPM ...

  7. 11-MySQL DBA笔记-MySQL的监控

    第11章 MySQL的监控 为什么我们需要监控呢?因为如果没有了监控,那么我们的服务可用性就无从度量,我们也无法及时地发现问题和处理问题.一个完善的监控体系,不仅需要进行实时的监控,也需要分析历史的监 ...

  8. mysql服务器监控参数总结

    1)主机健康监控:网络通信.软硬件错误.磁盘空间.内存使用 2)mysql健康监控: 服务端口(telnet尝试连接).mysqld和mysqld_safe进程.errorlog和复制状态 3)主机性 ...

  9. Linux入门(四)linux运行环境mysql详细操作及安装phpmyadmin

    1.1 安装mysql(中间需要设定数据库的密码) sudo apt-get install mysql-serversudo apt-get install php5-mysql   #安装php5 ...

随机推荐

  1. [BZOJ4455][ZJOI2016]数星星(容斥DP)

    4455: [Zjoi2016]小星星 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 707  Solved: 419[Submit][Status] ...

  2. POJ1067 取石子游戏 威佐夫博弈 博弈论

    http://poj.org/problem?id=1067 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子:二是可 ...

  3. bzoj3012(Trie)

    bzoj3012 题解 3012: [Usaco2012 Dec]First! Desdescription Bessie has been playing with strings again. S ...

  4. Codeforces 741B Arpa's weak amphitheater and Mehrdad's valuable Hoses

    [题目链接] http://codeforces.com/problemset/problem/741/B [题目大意] 给出一张图,所有连通块构成分组,每个点有价值和代价, 要么选择整个连通块,要么 ...

  5. 基于socket的udp传输,socketserver模块,进程

    基于UDP的套接字 udp是无连接的,先启动哪一端都不会报错 socket.SOCK_DGRAM 数据报协议 udp不会发送空数据,什么都不输入直接发送也会有报头发过去 服务端 import sock ...

  6. Problem B: 输入3个字符串,按由小到大顺序输出

    #include<stdio.h> #include<string.h> int main() { ],b[],c[],t[]; while(gets(a)!=NULL) { ...

  7. 20172333 2017-2018-2 《Java程序设计》第9周学习总结

    20172333 2017-2018-2 <Java程序设计>第9周学习总结 教材学习内容 第十一章 异常与错误均是对象 异常是由代码的特定方法或者操作出错. 错误是代码运行中虚拟机出现错 ...

  8. openstack-cinder-netapp

    https://communities.netapp.com/docs/DOC-31749 http://docs.openstack.org/havana/config-reference/cont ...

  9. OpenVPN记住账号密码自动连接

    说明:在增加了证书+账号密码之后,安全性确实提高了,但是面临的问题也有,每次重启时必须输入账号密码才能连接,这也造成了无人值守的问题. 解决: 1.在Client的client.ovpn末尾添加一行a ...

  10. Delphi 实现多线程编程的线程类 TThread

    http://blog.csdn.net/henreash/article/details/3183119 Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉 ...