MYSQL性能优化之Mysql数据库监控

监控对象

MYSQL性能优化之Mysql数据库监控_第1张图片

数据库可用性监控

  • 数据库进程或是端口存在并不意味着数据库就是可用的

  • MYSQL性能优化之Mysql数据库监控_第2张图片也就是说登陆服务器,并且能正确执行mysql命令

  • 数据库性能
    • QPS和DPS
    • 并发线程数量(同时执行sql语句的数量,不是连接数)
    • 对Innodb阻塞和死锁进行监控
  • 分区磁盘空间

MYSQL性能优化之Mysql数据库监控_第3张图片

防火墙的限制,TCP/IP可能被沾满
确认数据库是否可以连接
通过测试账号ping命令返回的信息判断数据库可以通过网络连接(批量)
MYSQL性能优化之Mysql数据库监控_第4张图片
确定数据库是否可读写
MYSQL性能优化之Mysql数据库监控_第5张图片
监控数据库的连接数
导致数据库的连接数突然增长:

  • 出现阻塞(数据库并发请求突增)
  • 像Memcahe这样的缓存失效
    MYSQL性能优化之Mysql数据库监控_第6张图片
    当大于0.8时报警通知管理员。

数据库性能监控

周期性执行show global status获取QPS

MYSQL性能优化之Mysql数据库监控_第7张图片

MYSQL性能优化之Mysql数据库监控_第8张图片

MyISAM使用的是表级锁,所有更容易阻塞(实时监控满查询来查看表阻塞)

MYSQL性能优化之Mysql数据库监控_第9张图片

查询阻塞测试:
连接1(增加一个排它锁):
MYSQL性能优化之Mysql数据库监控_第10张图片
MYSQL性能优化之Mysql数据库监控_第11张图片

连接2(添加事务,被阻塞):
MYSQL性能优化之Mysql数据库监控_第12张图片

MYSQL性能优化之Mysql数据库监控_第13张图片

数据库主从复制监控

MYSQL性能优化之Mysql数据库监控_第14张图片

数据库主从复制延迟监控

show slave status(不准确(不能发现这种延迟),网络问题,主上大量的log没有同步到从上,同时从上的log已经被重用完了)

MYSQL性能优化之Mysql数据库监控_第15张图片

使用多线程的程序同时对于主从服务器的状态进行检查

MYSQL性能优化之Mysql数据库监控_第16张图片

当每次修复完主从复制,都要检查主从复制数据的一致性

验证主从复制的数据是否一致

pt-table-checksum
  • 在主库下进行
  • databases 指定数据库的名字
  • 在test库下创建checksums表,并将监测结果放在其中
    MYSQL性能优化之Mysql数据库监控_第17张图片

你可能感兴趣的:(数据库,Mysql架构设计)