如何监控MySQL性能

如何监控MySQL性能,第1张

一,获取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

Mytop是一个开源的命令行工具,用于监视MySQL性能。 它的灵感来自于名为top的Linux系统监控工具,它的外观和感觉类似。 Mytop连接到MySQL服务器,并定期运行show processlist和show global status的命令。 然后,它以有用的格式汇总信息。 使用mytop,我们可以监视(实时)MySQL线程,查询和正常运行时间,以及查看哪个用户正在对哪个数据库运行查询,哪些是慢查询等等。 所有这些信息都可以用来优化MySQL服务器的性能。

在本教程中,我们将讨论如何安装,配置和使用mytop。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7563777.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存