次のリストに、スレーブサーバーの I/O スレッドの State
カラムに表示されるもっとも一般的な状態を示します。この状態は、SHOW SLAVE STATUS
によって表示される Slave_IO_State
カラムにも表示されるため、そのステートメントを使用して、何が起こっているかを十分に把握できます。
-
Connecting to master
の前の初期状態。 -
スレッドはマスターへの接続を試みています。
-
マスターへの接続が確立されたあとに一時的に発生する状態。
-
マスターへの接続が確立されたあとに一時的に発生する状態。
-
マスターへの接続が確立されたあとに一時的に発生する状態。スレッドは、マスターにそのバイナリログの内容のリクエストを送信し、リクエストしたバイナリログファイル名と位置から開始します。
-
Waiting to reconnect after a failed binlog dump request
切断のため、バイナリログダンプリクエストに失敗した場合、スレッドはスリープ中にこの状態になり、定期的に再接続を試みます。再試行の間隔は、
CHANGE MASTER TO
ステートメントを使用して指定できます。 -
Reconnecting after a failed binlog dump request
スレッドはマスターへの再接続を試みています。
-
Waiting for master to send event
スレッドはマスターに接続し、バイナリログイベントの到着を待機しています。マスターがアイドル状態の場合、これは長時間続く可能性があります。待機が
slave_net_timeout
秒継続した場合、タイムアウトになります。その時点で、スレッドは接続が切断されているとみなし、再接続を試みます。 -
Queueing master event to the relay log
スレッドはイベントを読み取っており、SQL スレッドがそれを処理できるように、それをリレーログにコピーしています。
-
Waiting to reconnect after a failed master event read
切断のため、読み取り中にエラーが発生しました。スレッドは
CHANGE MASTER TO
ステートメントに設定された秒数 (デフォルト 60) の間スリープしてから、再接続を試みます。 -
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
0 以外の
relay_log_space_limit
値を使用しており、リレーログの組み合わせたサイズがこの値を超えるまで拡大しています。I/O スレッドは、一部のリレーログファイルを削除できるように、リレーログ内容を処理することによって SQL スレッドが十分な領域を解放するまで、待機しています。 -
Waiting for slave mutex on exit
スレッドの停止中に一時的に発生する状態。