復制主線程狀態:
下面列出了主服務器的Binlog Dump線程的State列的最常見的狀態。如果你沒有在主服務器上看見任何Binlog Dump線程,這說明復制沒有在運行—即,目前沒有連接任何從服務器。
Sending binlog event to slave
二進制日志由各種事件組成,一個事件通常為一個更新加一些其它信息。線程已經從二進制日志讀取了一個事件並且正將它發送到從服務器。
Finished reading one binlog; switching to next binlog
線程已經讀完二進制日志文件並且正打開下一個要發送到從服務器的日志文件。
Has sent all binlog to slave; waiting for binlog to be updated
線程已經從二進制日志讀取所有主要的更新並已經發送到了從服務器。線程現在正空閒,等待由主服務器上新的更新導致的出現在二進制日志中的新事件。
Waiting to finalize termination
線程停止時發生的一個很簡單的狀態。
復制從線程狀態:(有從I/O線程、從SQL線程兩個)
1、復制從I/O線程狀態
下面列出了從服務器的I/O線程的State列的最常見的狀態。該狀態也出現在Slave_IO_State列,由SHOW SLAVE STATUS顯示。這說明你可以只通過該語句仔細浏覽所發生的事情。
Connecting to master
線程正試圖連接主服務器。
Checking master version
建立同主服務器之間的連接後立即臨時出現的狀態。
Registering slave on master
建立同主服務器之間的連接後立即臨時出現的狀態。
· Requesting binlog dump
建立同主服務器之間的連接後立即臨時出現的狀態。線程向主服務器發送一條請求,索取從請求的二進制日志文件名和位置開始的二進制日志的內容。
Waiting to reconnect after a failed binlog dump request
如果二進制日志轉儲請求失敗(由於沒有連接),線程進入睡眠狀態,然後定期嘗試重新連接。可以使用–master-connect-retry選項指定重試之間的間隔。
Reconnecting after a failed binlog dump request
線程正嘗試重新連接主服務器。
Waiting for master to send event
線程已經連接上主服務器,正等待二進制日志事件到達。如果主服務器正空閒,會持續較長的時間。如果等待持續slave_read_timeout秒,則發生超時。此時,線程認為連接被中斷並企圖重新連接。
Queueing master event to the relay log
線程已經讀取一個事件,正將它復制到中繼日志供SQL線程來處理。
Waiting to reconnect after a failed master event read
讀取時(由於沒有連接)出現錯誤。線程企圖重新連接前將睡眠master-connect-retry秒。
Reconnecting after a failed master event read
線程正嘗試重新連接主服務器。當連接重新建立後,狀態變為Waiting for master to send event。
Waiting for the slave SQL thread to free enough relay log space
正使用一個非零relay_log_space_limit值,中繼日志已經增長到其組合大小超過該值。I/O線程正等待直到SQL線程處理中繼日志內容並刪除部分中繼日志文件來釋放足夠的空間。
Waiting for slave mutex on exit
線程停止時發生的一個很簡單的狀態。
2、復制從SQL線程狀態:
下面列出了從服務器的SQL線程的State列的最常見的狀態。
Reading event from the relay log
線程已經從中繼日志讀取一個事件,可以對事件進行處理了。
Has read all relay log; waiting for the slave I/O thread to update it
線程已經處理了中繼日志文件中的所有事件,現在正等待I/O線程將新事件寫入中繼日志。
Waiting for slave mutex on exit
線程停止時發生的一個很簡單的狀態。
I/O線程的State列也可以顯示語句的文本。這說明線程已經從中繼日志讀取了一個事件,從中提取了語句,並且正在執行語句。