MySQL 8.0 リファレンスマニュアル


27.12.11.6 replication_applier_status_by_coordinator テーブル

マルチスレッドのレプリカの場合、レプリカは複数のワーカースレッドとコーディネータスレッドを使用してそれらを管理し、このテーブルにはコーディネータスレッドのステータスが表示されます。 シングルスレッドレプリカの場合、このテーブルは空です。 マルチスレッドのレプリカの場合、replication_applier_status_by_worker テーブルにワーカースレッドのステータスが表示されます。 このテーブルには、コーディネータスレッドによってワーカーのキューにバッファリングされた最後のトランザクションと、現在バッファリングしているトランザクションに関する情報が表示されます。 開始タイムスタンプは、このスレッドがトランザクションの最初のイベントをリレーログから読み取ってワーカーのキューにバッファするタイミングを表し、終了タイムスタンプは最後のイベントがワーカーのキューへのバッファリングを終了したタイミングを表します。

replication_applier_status_by_coordinator テーブルには、次のカラムがあります:

  • CHANNEL_NAME

    この行が表示しているレプリケーションチャネル。 常にデフォルトのレプリケーションチャネルがあり、さらにレプリケーションチャネルを追加できます。 詳しくはセクション17.2.2「レプリケーションチャネル」をご覧ください。

  • THREAD_ID

    SQL/コーディネータスレッド ID。

  • SERVICE_STATE

    ON (スレッドが存在し、アクティブまたはアイドル状態) または OFF (スレッドは存在しません)。

  • LAST_ERROR_NUMBER, LAST_ERROR_MESSAGE

    SQL/コーディネータスレッドの停止の原因となった最新のエラーのエラー番号およびエラーメッセージ。 エラー番号 0 および空の文字列であるメッセージは、「エラーなし」を意味します。 LAST_ERROR_MESSAGE 値が空でない場合、エラー値はレプリカエラーログにも表示されます。

    RESET MASTER または RESET REPLICA | SLAVE を発行すると、これらのカラムに表示される値がリセットされます。

    LAST_ERROR_NUMBER カラムおよび LAST_ERROR_MESSAGE カラムに表示されるすべてのエラーコードおよびメッセージは、Server Error Message Reference にリストされているエラー値に対応します。

  • LAST_ERROR_TIMESTAMP

    最新の SQL/コーディネータエラーがいつ発生したかを示す'YYYY-MM-DD hh:mm:ss[.fraction]'形式のタイムスタンプ。

  • LAST_PROCESSED_TRANSACTION

    このコーディネータによって最後に処理されたトランザクションのグローバルトランザクション ID (GTID)。

  • LAST_PROCESSED_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP

    このコーディネータによって処理された最後のトランザクションが元のソースでコミットされた時間を示す'YYYY-MM-DD hh:mm:ss[.fraction]'形式のタイムスタンプ。

  • LAST_PROCESSED_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP

    このコーディネータによって処理された最後のトランザクションが即時ソースでコミットされた時間を示す'YYYY-MM-DD hh:mm:ss[.fraction]'形式のタイムスタンプ。

  • LAST_PROCESSED_TRANSACTION_START_BUFFER_TIMESTAMP

    このコーディネータスレッドがワーカースレッドのバッファへの最後のトランザクションの書込みを開始した時間を示す'YYYY-MM-DD hh:mm:ss[.fraction]'形式のタイムスタンプ。

  • LAST_PROCESSED_TRANSACTION_END_BUFFER_TIMESTAMP

    このコーディネータスレッドによってワーカースレッドのバッファに最後のトランザクションが書き込まれた時間を示す'YYYY-MM-DD hh:mm:ss[.fraction]'形式のタイムスタンプ。

  • PROCESSING_TRANSACTION

    このコーディネータスレッドが現在処理しているトランザクションのグローバルトランザクション ID (GTID)。

  • PROCESSING_TRANSACTION_ORIGINAL_COMMIT_TIMESTAMP

    現在処理中のトランザクションが元のソースでコミットされた時間を示す'YYYY-MM-DD hh:mm:ss[.fraction]'形式のタイムスタンプ。

  • PROCESSING_TRANSACTION_IMMEDIATE_COMMIT_TIMESTAMP

    現在処理中のトランザクションが即時ソースでコミットされた時間を示す'YYYY-MM-DD hh:mm:ss[.fraction]'形式のタイムスタンプ。

  • PROCESSING_TRANSACTION_START_BUFFER_TIMESTAMP

    このコーディネータスレッドが現在処理中のトランザクションのワーカースレッドのバッファへの書込みを開始した時間を示す'YYYY-MM-DD hh:mm:ss[.fraction]'形式のタイムスタンプ。

パフォーマンススキーマが無効になっている場合、ローカルタイミング情報は収集されないため、バッファートランザクションの開始タイムスタンプと終了タイムスタンプを示すフィールドはゼロになります。

replication_applier_status_by_coordinator テーブルには次のインデックスがあります:

  • 主キー (CHANNEL_NAME)

  • (THREAD_ID) のインデックス

次のテーブルに、replication_applier_status_by_coordinator カラムと SHOW REPLICA | SLAVE STATUS カラムの対応を示します。

replication_applier_status_by_coordinator カラム SHOW REPLICA | SLAVE STATUS カラム
THREAD_ID なし
SERVICE_STATE Replica_SQL_Running
LAST_ERROR_NUMBER Last_SQL_Errno
LAST_ERROR_MESSAGE Last_SQL_Error
LAST_ERROR_TIMESTAMP Last_SQL_Error_Timestamp

関連キーワード:  テーブル, パフォーマンス, スキーマ, replication, トランザクション, status, applier, events, コーディネータスレッド, TRANSACTION