zabbix系列 ~ 如何更好的利用mysql监控

时间:2023-03-09 09:57:12
zabbix系列 ~ 如何更好的利用mysql监控

一 简介:今天来聊聊一些关于mysql 监控需要关注的问题
二 实现的原理
   1 global status
   2 variables
三 我们需要关注的zabbix性能图
  1 事务类型
     1 MYSQL operations 增删查改提交类别的统计 QPS
     2 INNODB tranctions 事务量和历史链的统计 TPS
        1 innodb trancations TPS统计
        2 history list 未清除事务数统计
    3 MYSQL TABLE LOCKS 表锁相关
       1 TABLE_LOCKS_WAIT 表等待累加
       2 slow queries 慢日志
    4 INNODB current wait 现在锁等待的状态
  2 查询类型
    1 MYSQL SELECT TYPE 查询的各种类型
      1 select_scan 全表搜索查询 (注意)
      2 select_range 范围查找
     3 select_full_join 多表join连接字段为all (注意)
     4 select_full_join_range 多表join的范围查找
 3 常态类型
    1 MYSQL bandwidth 进出口流量的统计
    2 MYSQL connections 总体链接数统计(sleep)
    3 MYSQL Threads 总体连接数统计(running)
    4 MYSQL processlist 统计各种状态的语句
    5 MYSQL REPL 复制相关信息
    6 Memory use 数据库占用内存
    7 INNODB SEMAPHORE spin监控

4 mysql innodb_io监控

数据来源 show engine inndob status\G

1 mysql innodb_io_pending ->IO等待挂起的操作

read/write/sync/log-write等

2 mysql innodb_io ->OS级别的文件读写刷新监控

file -> read / write/sync

四 默认的报警阈值
  1 并发连接数
     Threads-running.last(0) >70  
     Threads-running.last(0)}>200
2 最大连接数
    MySQL.Connections.last(0)}>5000 连接数
    MySQL.Threads-connected.last(0)}/{Template Percona MySQL Server:MySQL.max-connections.last(0)}>0.8 最大连接数与连接数比
    MySQL.Threads-connected.last(0)}/{Template Percona MySQL Server:MySQL.max-connections.last(0)}>0.95
3 进程存活
   proc.num[mysqld].last(0)}<1
4 复制进程健康
   MySQL.slave-lag.last(0)}>300 延迟大于300
   MySQL.slave-lag.last(0)}>900 延迟大于900
   MySQL.running-slave.last(0)}=0复制进程是否健康

六 总结

zabbix关于mysql监控项有很多,我只列出关于我的理解,我觉得有用并且懂的会进行关注,其他的就暂时不关注