次の一覧は、スレーブの I/O スレッドの
State
カラムに表示される一般的な状態です。これは、SHOW
SLAVE STATUS
出力の
Slave_IO_State
カラムにも表示され、このステートメントを使用して現状を把握できます。
Connecting to master
の前の初期状態です。
マスタへの接続を試行中の状態。
マスタへの接続が確立した直後に発生する瞬間的な状態。
マスタへの接続が確立した直後に発生する瞬間的な状態。
マスタへの接続が確立した直後に発生する瞬間的な状態。マスターにバイナリログの内容を送信するよう要求している状態。要求したバイナリログのファイル名と位置を最初に要求します。
Waiting to reconnect after a
failed binlog dump request
接続切断などにより、バイナリログダンプ要求に失敗した場合の状態。スレッドはスリープ中この状態になり、定期的に再接続を試みる。CHANGE
MASTER TO
ステートメントまたは
--master-connect-retry
オプションを使用して、再試行の間隔を設定できます。
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
ステートメントまたは
--master-connect-retry
オプションで設定された秒数
(デフォルトは 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
スレッド停止中に発生する一時的な状態。