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

  

猜你喜欢

转载自www.cnblogs.com/yujiaershao/p/11387787.html
今日推荐