TencentDB for MySQL主机监控备机监控的说明

2019-02-27 15:38:51 浏览数 (1)

MySQL主从同步的指标说明

这里涉及4个指标

代码语言:txt复制
slave_sql_runing:slave下SQL线程状态,作用是slave侧执行从主库抓过来的binlog
slave_io_runing:slave下IO线程状态,作用是slave侧将binlog从主库抓过来,主要是IO传输用的
seconds_behind_master:与主机同步延迟时间
master_slave_sync_distance:与主机同步延迟距离

注意:slave_sql_runing 以及 slave_io_runing同时为0正常代表处于工作状态,主从同步正常,slave_sql_runing为1代表从机不能执行主库传输过来的binlog,主从同步失败,slave_io_runing为1代表不能把binlog从主库抓到从库来,两者之间无法传输

4个指标怎么看

4个指标怎么看呢?实际上是在 已经搭建主从同步的slave端执行 show slave status的结果,如下所示:

代码语言:txt复制
mysql> show slave statusG
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 10.1.1.32
                  Master_User: copy
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000003
          Read_Master_Log_Pos: 755
               Relay_Log_File: relay-bin.000002
                Relay_Log_Pos: 320
        Relay_Master_Log_File: mysql-bin.000003
              Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB: 
          Replicate_Ignore_DB: 
           Replicate_Do_Table: 
       Replicate_Ignore_Table: 
      Replicate_Wild_Do_Table: 
  Replicate_Wild_Ignore_Table: 
                   Last_Errno: 0
                   Last_Error: 
                 Skip_Counter: 0
          Exec_Master_Log_Pos: 755
              Relay_Log_Space: 521
              Until_Condition: None
               Until_Log_File: 
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           Master_SSL_CA_File: 
           Master_SSL_CA_Path: 
              Master_SSL_Cert: 
            Master_SSL_Cipher: 
               Master_SSL_Key: 
        Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 0
                Last_IO_Error: 
               Last_SQL_Errno: 0
               Last_SQL_Error: 
  Replicate_Ignore_Server_Ids: 
             Master_Server_Id: 32
                  Master_UUID: ba5f1c18-3d70-11e8-891f-000c2986a1f0
             Master_Info_File: /var/lib/mysql/master.info
                    SQL_Delay: 0
          SQL_Remaining_Delay: NULL
      Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
           Master_Retry_Count: 86400
                  Master_Bind: 
      Last_IO_Error_Timestamp: 
     Last_SQL_Error_Timestamp: 
               Master_SSL_Crl: 
           Master_SSL_Crlpath: 
           Retrieved_Gtid_Set: 
            Executed_Gtid_Set: 
                Auto_Position: 0
         Replicate_Rewrite_DB: 
                 Channel_Name: 
           Master_TLS_Version: 

主库执行

那么我们在 已经搭建了主从同步的主库执行 这个命令会得到什么呢?

代码语言:txt复制
mysql> show slave status;
Empty set (0.01 sec)

为空,惊不惊喜,意不意外!

单独库执行

那么我们在 孜然一身的库执行 这个命令会得到什么呢?

代码语言:txt复制
mysql> show slave status;
Empty set (0.01 sec)

还是空的

云监控中如何配置主从同步监控

我们理解了主从同步的4个指标及其意义,接下来我们进入云监控一探究竟,看看这四个指标到底在哪?

我们发现有主机监控如下所示:

image.pngimage.png

我们还发现有备机监控如下所示:

image.pngimage.png

发现两者都有,那么 主机监控4个指标备机监控4个指标 什么关系呢?

还记得上面什么 主库从库单身库执行show slave status; 的结果吗?

实际上,主机监控,就是在有主机之处执行show slave status;的结果,哪些是有主机的地方呢?包含了主实例中的主机、RO实例、灾备实例中的主机

  • 主实例中的主库执行( 绝大多数情况当然是空了,因为主库不做别人从库)
  • RO实例上执行( 当然是该RO和主库的延迟情况了)
  • 灾备实例上执行(当然是异地灾备主机和该灾备实例所属主实例的延迟情况了)

备机监控,就是在有从实例的地方执行show slave status;的结果,哪些是有从实例的地方呢?当然是主从实例中的从实例、灾备实例中的从实例呀

  • 主实例中的从库执行( 反映的是透明从机和主库的延迟 )
  • 灾备从库上执行( 当然是异地灾备从机向灾备主机的延迟情况了)

如何看延迟

主实例和主实例透明从机之间

我们主实例控制台上看到的延迟就是主实例的主机和透明备机的延迟

image.pngimage.png
主实例和RO实例之间

RO实例控制台上看到的延迟

image.pngimage.png
主实例和灾备实例之间

那么灾备实例控制台上是什么呢?如下图

image.pngimage.png

没错,就是 灾备实例和自己跟随的主实例之间的延迟监控

0 人点赞