MySQL学习(九)--数据库监控

Nagios Zabbix
对数据库服务可用性进行监控
    数据库或者端口存在并不意味数据库就是可用的(不够)
    通过网络连接到数据库并且确定数据库是可以对外提供服务的

对数据库性能进行监控
    QPS和TPS

对主从复制进行监控
对服务器资源的监控

数据库可用性的监控:
    mysqkadmin -umonitor_user -p -h ping
    teinet ip db_port

·使用程序通过网络建立数据库连接
    如何确定数据库是否可读写
检查数据库的read_only参数是否为off
建立监控表并对表中数据进行更改
执行简单的查询select@@version

如何监控数据库的连接数    
    原因出现阻塞、memcahe这样的缓存失效
    时刻关注数量
    show variables like 'max_connections';
    show global status like'Threads_connented'
    Threads_connected/max_connections>0.8

性能监控:
记录性能监控过程中所采集到的数据库的状态
如何计算QPS和TPS
CPU的使用率

如何监控数据库的并发请求数量
数据库系统的性能会随着并发处理数量的增加而下降
    show global status like'Threads_running'
并发处理的数量通常会远小于同一时间连接到数据库的线程的数量
    --数据库出现大量阻塞
如何监控Innodb的阻塞
    select b.rex_mysql_thread_id as'被阻塞线程',b.trx_query as '阻塞的sql',c.trx_mysql_thread_id as '阻塞线程',(UXIX_TIMESTAMP()-UNIX_TIMESTAMP(C.TRX_STARTED))AS '阻塞时间'
    from information_schema.inndb_lock_waits a join information_schema.innodb_trx b ON a.requesting_trx_id=b.trx_id JOIN information_schema.innodb_trx c ON a.blocking_trx_id=c.trx_id
    where (unix_timestamp()-unix_timestamp(c.trx_started()))>60;

MySQL主从复制进行监控
主从复制的延迟
主:show master status;
从:show slave status;
已经传输完成的主上二进制的名字和偏移量

如何检验蛀虫复制的数据是否一致:
pt_checksum u=dba,p="password"
--adtabases mysql\
--replicate tast.checksums

上一篇:c# – 抛出异常的TestRunType的序列化


下一篇:全球首个TRX交易区上线,波场生态布局进入快车道