このテーブルには、レプリカまたはグループレプリケーショングループメンバーの適用者スレッドによって処理されるトランザクションの詳細が示されます。 シングルスレッドのレプリカの場合、レプリカの単一アプライヤスレッドのデータが表示されます。 マルチスレッドのレプリカの場合、データはアプライヤスレッドごとに個別に表示されます。 マルチスレッドレプリカ上のアプライヤスレッドは、ワーカーと呼ばれることもあります。 レプリカまたはグループレプリケーショングループメンバー上のアプライヤスレッドの数は、シングルスレッドレプリカの場合はゼロに設定される slave_parallel_workers
システム変数によって設定されます。 マルチスレッドレプリカには、アプライヤスレッドを管理するためのコーディネータスレッドもあり、このスレッドのステータスは replication_applier_status_by_coordinator
テーブルに表示されます。
エラーに関連するカラムに表示されるすべてのエラーコードおよびメッセージは、Server Error Message Reference にリストされているエラー値に対応します。
パフォーマンススキーマが無効になっている場合、ローカルのタイミング情報は収集されないため、適用されるトランザクションの開始タイムスタンプと終了タイムスタンプを示すフィールドはゼロになります。 このテーブルの開始タイムスタンプは、ワーカーが最初のイベントの適用を開始した時間を示し、終了タイムスタンプは、トランザクションの最後のイベントが適用された時間を示します。
START REPLICA | SLAVE
ステートメントによってレプリカが再起動されると、APPLYING_TRANSACTION
で始まるカラムがリセットされます。 MySQL 8.0.13 より前は、これらのカラムはシングルスレッドモードで動作していたレプリカではリセットされず、マルチスレッドレプリカでのみリセットされていました。
replication_applier_status_by_worker
テーブルには、次のカラムがあります:
-
CHANNEL_NAME
この行が表示しているレプリケーションチャネル。 常にデフォルトのレプリケーションチャネルがあり、さらにレプリケーションチャネルを追加できます。 詳しくはセクション17.2.2「レプリケーションチャネル」をご覧ください。
-
WORKER_ID
ワーカー識別子 (
mysql.slave_worker_info
テーブルのid
カラムと同じ値)。STOP REPLICA | SLAVE
の後、THREAD_ID
カラムはNULL
になりますが、WORKER_ID
値は保持されます。 -
THREAD_ID
ワーカースレッド ID。
-
SERVICE_STATE
ON
(スレッドが存在し、アクティブまたはアイドル状態) またはOFF
(スレッドは存在しません)。 -
LAST_ERROR_NUMBER
,LAST_ERROR_MESSAGE
ワーカースレッドの停止の原因となった最新のエラーのエラー番号およびエラーメッセージ。 0 のエラー番号および空の文字列のメッセージは、「エラーなし」を示します
LAST_ERROR_MESSAGE
値が空でない場合、エラー値はレプリカエラーログにも表示されます。RESET MASTER
またはRESET REPLICA | SLAVE
を発行すると、これらのカラムに表示される値がリセットされます。 -
LAST_ERROR_TIMESTAMP
最新のワーカーエラーがいつ発生したかを示す
'
形式のタイムスタンプ。YYYY-MM-DD hh:mm:ss
[.fraction
]' -
LAST_APPLIED_TRANSACTION
このワーカーによって適用された最後のトランザクションのグローバルトランザクション ID (GTID)。
-
LAST_APPLIED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP
このワーカーによって適用された最後のトランザクションが元のソースでコミットされた時間を示す
'
形式のタイムスタンプ。YYYY-MM-DD hh:mm:ss
[.fraction
]' -
LAST_APPLIED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP
このワーカーによって適用された最後のトランザクションが即時ソースでコミットされた時間を示す
'
形式のタイムスタンプ。YYYY-MM-DD hh:mm:ss
[.fraction
]' -
LAST_APPLIED_TRANSACTION_START_APPLY_TIMESTAMP
このワーカーが最後に適用されたトランザクションの適用をいつ開始したかを示す
'
形式のタイムスタンプ。YYYY-MM-DD hh:mm:ss
[.fraction
]' -
LAST_APPLIED_TRANSACTION_END_APPLY_TIMESTAMP
このワーカーが最後に適用されたトランザクションの適用を終了した時間を示す
'
形式のタイムスタンプ。YYYY-MM-DD hh:mm:ss
[.fraction
]' -
APPLYING_TRANSACTION
このワーカーが現在適用しているトランザクションのグローバルトランザクション ID (GTID)。
-
APPLYING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP
このワーカーが現在適用しているトランザクションが元のソースでコミットされた時間を示す
'
形式のタイムスタンプ。YYYY-MM-DD hh:mm:ss
[.fraction
]' -
APPLYING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP
このワーカーが現在適用しているトランザクションが即時ソースでコミットされた時間を示す
'
形式のタイムスタンプ。YYYY-MM-DD hh:mm:ss
[.fraction
]' -
APPLYING_TRANSACTION_START_APPLY_TIMESTAMP
このワーカーが現在適用されているトランザクションを最初に適用しようとした時間を示す
'
形式のタイムスタンプ。 MySQL 8.0.13 より前は、このタイムスタンプは一時エラーのためにトランザクションが再試行されたときにリフレッシュされたため、トランザクションを適用しようとした最新のタイムスタンプが表示されていました。YYYY-MM-DD hh:mm:ss
[.fraction
]' -
LAST_APPLIED_TRANSACTION_RETRIES_COUNT
最初の試行後に最後に適用されたトランザクションがワーカーによって再試行された回数。 最初の試行でトランザクションが適用された場合、この数値はゼロです。
-
LAST_APPLIED_TRANSACTION_LAST_TRANSIENT_ERROR_NUMBER
トランザクションが再試行される原因となった最後の一時エラーのエラー番号。
-
LAST_APPLIED_TRANSACTION_LAST_TRANSIENT_ERROR_MESSAGE
トランザクションが再試行される原因となった最後の一時エラーのメッセージテキスト。
-
LAST_APPLIED_TRANSACTION_LAST_TRANSIENT_ERROR_TIMESTAMP
トランザクションが再試行される原因となった最後の一時エラーの
'
形式のタイムスタンプ。YYYY-MM-DD hh:mm:ss
[.fraction
]' -
APPLYING_TRANSACTION_RETRIES_COUNT
現在適用されているトランザクションがこの時点までに再試行された回数。 最初の試行でトランザクションが適用された場合、この数値はゼロです。
-
APPLYING_TRANSACTION_LAST_TRANSIENT_ERROR_NUMBER
現在のトランザクションが再試行される原因となった最後の一時エラーのエラー番号。
-
APPLYING_TRANSACTION_LAST_TRANSIENT_ERROR_MESSAGE
現在のトランザクションが再試行される原因となった最後の一時エラーのメッセージテキスト。
-
APPLYING_TRANSACTION_LAST_TRANSIENT_ERROR_TIMESTAMP
現在のトランザクションが再試行される原因となった最後の一時エラーの
'
形式のタイムスタンプ。YYYY-MM-DD hh:mm:ss
[.fraction
]'
replication_applier_status_by_worker
テーブルには次のインデックスがあります:
主キー (
CHANNEL_NAME
、WORKER_ID
)(
THREAD_ID
) のインデックス
次のテーブルに、replication_applier_status_by_worker
カラムと SHOW REPLICA | SLAVE STATUS
カラムの対応を示します。
replication_applier_status_by_worker カラム |
SHOW REPLICA | SLAVE STATUS カラム |
---|---|
WORKER_ID |
なし |
THREAD_ID |
なし |
SERVICE_STATE |
なし |
LAST_ERROR_NUMBER |
Last_SQL_Errno |
LAST_ERROR_MESSAGE |
Last_SQL_Error |
LAST_ERROR_TIMESTAMP |
Last_SQL_Error_Timestamp |