Spec-Zone.ru › MySQL 9.2

29.12.13.4 Таблица table_handles

Схема Performance Schema предоставляет информацию о блокировках таблиц через таблицу table_handles, чтобы показать блокировки таблиц, действующие в настоящий момент для каждого открытого дескриптора таблицы. table_handles сообщает о том, что регистрируется механизмом мониторинга блокировок таблиц. Эта информация показывает, какие дескрипторы таблиц открыты у сервера, как они заблокированы и какими сессиями.

Таблица table_handles только для чтения и не может быть обновлена. По умолчанию она имеет автоматический размер; для настройки размера таблицы установите системную переменную performance_schema_max_table_handles при запуске сервера.

Мониторинг блокировок таблиц использует инструмент wait/lock/table/sql/handler, который включён по умолчанию.

Для управления состоянием мониторинга блокировок таблиц при запуске сервера используйте строки подобного вида в вашем файле my.cnf:

  • Включить:

    [mysqld]
    performance-schema-instrument='wait/lock/table/sql/handler=ON'
    
  • Выключить:

    [mysqld]
    performance-schema-instrument='wait/lock/table/sql/handler=OFF'
    

Для управления состоянием мониторинга блокировок таблиц во время выполнения обновите таблицу setup_instruments:

  • Включить:

    UPDATE performance_schema.setup_instruments
    SET ENABLED = 'YES', TIMED = 'YES'
    WHERE NAME = 'wait/lock/table/sql/handler';
    
  • Выключить:

    UPDATE performance_schema.setup_instruments
    SET ENABLED = 'NO', TIMED = 'NO'
    WHERE NAME = 'wait/lock/table/sql/handler';
    

Таблица table_handles имеет следующие столбцы:

  • OBJECT_TYPE

    Таблица, открытая дескриптором таблицы.

  • OBJECT_SCHEMA

    Схема, содержащая объект.

  • OBJECT_NAME

    Имя инструментируемого объекта.

  • OBJECT_INSTANCE_BEGIN

    Адрес дескриптора таблицы в памяти.

  • OWNER_THREAD_ID

    Поток, владеющий дескриптором таблицы.

  • OWNER_EVENT_ID

    Событие, которое привело к открытию дескриптора таблицы.

  • INTERNAL_LOCK

    Блокировка таблицы, используемая на уровне SQL. Значение является одним из READ, READ WITH SHARED LOCKS, READ HIGH PRIORITY, READ NO INSERT, WRITE ALLOW WRITE, WRITE CONCURRENT INSERT, WRITE LOW PRIORITY или WRITE. Подробнее о типах блокировок см. файл include/thr_lock.h.

  • EXTERNAL_LOCK

    Блокировка таблицы, используемая на уровне хранилища данных. Значение является одним из READ EXTERNAL или WRITE EXTERNAL.

Таблица table_handles имеет следующие индексы:

  • Первичный ключ по (OBJECT_INSTANCE_BEGIN)

  • Индекс по (OBJECT_TYPE, OBJECT_SCHEMA, OBJECT_NAME)

  • Индекс по (OWNER_THREAD_ID, OWNER_EVENT_ID)

TRUNCATE TABLE запрещена для таблицы table_handles.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-9.2-en/performance-schema-table-handles-table.html

Spec-Zone.ru

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