数据库架构--数据库监控

一、对数据库服务可用性进行监控

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

2、通过网络连接到数据库并且确定数据库是可以对外提供服务的

3、使用mysqladmin -umonitor_user -p -h ping

4、telnet ip db_port

5、使用程序通过网络建立数据库连接(最好的方式)


6、确认数据库是否可读:

检查数据库的read_only参数是否为off

定期对主从服务器中的主数据库的这个参数进行检查

建立监控表并对表中数据进行更行

执行简单的查询select @@version


7、监控数据库连接数

可以连接到MySQL的线程是有限制的

有很多因素都会造成数据库的连接突然的增长

出现阻塞,像memcahe这样的缓存失效

show variables like ‘max_connections’;

show global status like ‘Threads_connected’


二、对数据库性能进行监控

1、QPS和TPS

QPS:每秒中的查询数量(包括了数据库所有的请求)

TPS:每秒中处理事务的数量(包括insert,update,delelte)


2、并发数线程数量

数据库系统的性能会随着并发处理请求数量的增加而下载

show global status like ‘Threads_running’

并发处理的数量通常会远小于同一时间连接到数据库的线程的数量


3、如何对Innodb阻塞和死锁进行监控


4、记录性能监控过程中所采集到的数据库的状态


三、对主从复制进行监控

1、主从复制链路状态的监控

2、主从复制延迟的监控:

2.1、参与复制的主从服务器之间一定会存在着一些延迟

2.2、show slave status

2.3、show master status \G(主上的二进制日志文件名和偏移量)

 

3、定期的确认主从复制的数据是否一致

pt-table-checksum



四、对服务器资源的监控

1、磁盘空间:服务器磁盘空间大并不意味着MySQL数据库服务能使用的空间就足够大

2、cup的使用情况,内存的使用情况,swap分区的使用情况以及网络IO的情况等


猜你喜欢

转载自blog.csdn.net/xiaochen1999/article/details/80947183