MySQL 监控性能瓶颈排查
Posted yujiaershao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 监控性能瓶颈排查相关的知识,希望对你有一定的参考价值。
监控的作用
业务/数据库服务是否可用
是否可以对外提供服务
进程在允许,但没监听网络,或者授权不正确,或者网络出故障
因此不能只监控进程启动与否,是否监听网络
最好能模拟业务逻辑进行监控
这个业务逻辑除了能完成可用性监控外,还可以进行数据可靠性监控
数据可靠性
业务数据是否可靠
服务可用,不代表数据就是正确的
有可能误操作删除数据,或者其他意外原因丢失数据
或者主从复制延迟,导致在从服务器无法读取到最新数据
通过模拟随机业务逻辑来验证数据可靠性
服务器&mysql实例出现高负债
服务可用,但响应很慢,其实等于不可用
响应很慢时,用户不耐烦一直刷新,更容易引起风暴
需要及时关注整个系统响应时长,每秒处理事务数
监控可重点关注当前可用性和历史数据趋势
可用性告警
历史趋势
了解线上计算资源使用情况
作为计算资源扩容/收缩的参考
作为优化工作的成果展示记录
通过事务实时性能数据变化感知业务的变化
数据库性能变化趋势判断服务器资源是否足够
监控之关键指标
常规运行情况汇总
CPU: %user, %sys, %idel, %iowait
内存: free,cached, swap, 是否有内存泄漏和OOM
I/O: iops,吞吐,延时,利用率(%util)
网卡: 吞吐(特别关注小包收发频率)
系统监控
常规工具
top, free, ps ,df
sysstat (sar,mpstat, iostat) \ dstat \ iotop
sar -u cpu状态
sar -d disk状态
iostat -dkx / dmx
mpstat 查看cpu中断不均衡 mpstat -I SUM -P ALL 1 10 (如果中断不均衡说明硬盘网卡等默认绑定到某一个cpu,改成可以使用所有cpu)
netstat, ethstatus, arping
其他工具
perf
pstack
以上是关于MySQL 监控性能瓶颈排查的主要内容,如果未能解决你的问题,请参考以下文章