Spec-Zone.ru › MySQL 8.4

29.12.11.7 Таблица replication_applier_status_by_worker

Данная таблица содержит подробные сведения о транзакциях, обработанных потоками-применителями на реплике или в группе репликации. Для реплики с одним потоком данных отображаются данные для единственного потока-применителя реплики. Для реплики с несколькими потоками данные отображаются индивидуально для каждого потока-применителя. Потоки-применители на реплике с несколькими потоками иногда называются работниками. Количество потоков-применителей на реплике или в группе репликации задаётся системной переменной replica_parallel_workers, которая устанавливается в ноль для реплики с одним потоком. Реплика с несколькими потоками также имеет координаторный поток для управления потоками-применителями, и статус этого потока отображается в таблице replication_applier_status_by_coordinator.

Все коды и сообщения об ошибках, отображаемые в столбцах, относящихся к ошибкам, соответствуют значениям ошибок, перечисленным в .

Когда Performance Schema отключён, локальная информация о времени не собирается, поэтому поля, показывающие временные метки начала и окончания применённых транзакций, равны нулю. Временные метки начала в этой таблице относятся к моменту, когда работник начал применение первого события, а временные метки окончания — к моменту применения последнего события транзакции.

Когда реплика перезапускается с помощью оператора START REPLICA, столбцы, начинающиеся с APPLYING_TRANSACTION, сбрасываются.

Таблица replication_applier_status_by_worker содержит следующие столбцы:

  • CHANNEL_NAME

    Канал репликации, отображаемый в этой строке. Всегда есть основной канал репликации, и можно добавить дополнительные каналы. Более подробную информацию см. в Разделе 19.2.2, «Каналы репликации».

  • WORKER_ID

    Идентификатор работника (то же значение, что и в столбце id таблицы mysql.slave_worker_info). После выполнения STOP REPLICA, столбец THREAD_ID становится NULL, но значение WORKER_ID сохраняется.

  • THREAD_ID

    Идентификатор потока работника.

  • SERVICE_STATE

    ON (поток существует и активен или в ожидании) или OFF (поток больше не существует).

  • LAST_ERROR_NUMBER, LAST_ERROR_MESSAGE

    Номер и сообщение об ошибке последней ошибки, которая привела к остановке потока работника. Номер ошибки 0 и пустое сообщение означают «без ошибки». Если значение LAST_ERROR_MESSAGE не пустое, значения ошибок также отображаются в журнале ошибок реплики.

    Выполнение RESET BINARY LOGS AND GTIDS или RESET REPLICA сбрасывает значения, показанные в этих столбцах.

  • LAST_ERROR_TIMESTAMP

    Временная метка в формате 'YYYY-MM-DD hh:mm:ss[.fraction]', показывающая, когда произошла последняя ошибка работника.

  • LAST_APPLIED_TRANSACTION

    Глобальный идентификатор транзакции (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

    Глобальный идентификатор транзакции (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

    Временная метка в формате '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 STATUS.

replication_applier_status_by_worker Column SHOW REPLICA STATUS Column
WORKER_ID None
THREAD_ID None
SERVICE_STATE None
LAST_ERROR_NUMBER Last_SQL_Errno
LAST_ERROR_MESSAGE Last_SQL_Error
LAST_ERROR_TIMESTAMP Last_SQL_Error_Timestamp

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/performance-schema-replication-applier-status-by-worker-table.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API