mysql slave 跟進 master 的關鍵狀態指標

bulletming發表於2019-06-18

master:

show master status的結果中的File和Position;比較簡單,就表明了當前master的當前的logbin檔案及寫入的位置

slave:

show slave status結果中的:

Master_Log_File,Read_Master_Log_Pos表示了當前slave讀到的master的file和pos,這部分資料是有安全保障的,DB完蛋了,只要讀到DR了,就不會丟了。而Relay_Master_Log_File,Exec_Master_Log_Pos表示的是當前Slave已經執行了的master上logbin的檔案及位置。

slave status還有個更直觀的指標是Seconds_Behind_Master,可以看到DR落後DB的時間。

因為部分情況下(DR沒有複製許可權和serverid相同),可能slave前兩個指標落後master很多,同時io,sqlruning狀態又都是yes,現在的監控是對比slave的後兩個狀態跟master取過來的file和pos作對比。這能反映跟進狀態,但是不一定就有那麼多的logbin沒過來。因為那要看slave status的前兩個指標。

下邊是一個slave的狀態:

             Slave_IO_State: Queueing master event to the relay log
                Master_Host: 172.16.216.32
                Master_User: repl
                Master_Port: 3306
              Connect_Retry: 60
            Master_Log_File: world_4.051779
        Read_Master_Log_Pos: 7589551
             Relay_Log_File: worldbak_4-relay-bin.107887
              Relay_Log_Pos: 16940857
      Relay_Master_Log_File: world_4.051770
           Slave_IO_Running: Yes
          Slave_SQL_Running: Yes
            Replicate_Do_DB:
        Replicate_Ignore_DB: test,mysql
         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: 2294
            Relay_Log_Space: 259279692
            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: 500
1 row in set (0.00 sec)

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/82392/viewspace-196157/,如需轉載,請註明出處,否則將追究法律責任。

相關文章