Spec-Zone.ru › MySQL 8.4

7.6.4 Плагин переписывания запросов Rewriter

  • 7.6.4.1 Установка или удаление плагина переписывания запросов Rewriter
  • 7.6.4.2 Использование плагина переписывания запросов Rewriter
  • 7.6.4.3 Справочник по плагину переписывания запросов Rewriter

MySQL поддерживает плагины переписывания запросов, которые могут анализировать и, возможно, изменять SQL-запросы, получаемые сервером, перед их выполнением сервером. См. Плагины переписывания запросов.

Дистрибутивы MySQL включают плагин переписывания запросов postparse, именованный Rewriter, и скрипты для установки плагина и связанных с ним элементов. Эти элементы вместе обеспечивают возможность переписывания запросов:

  • Плагин со стороны сервера, именованный Rewriter, анализирует запросы и, возможно, переписывает их на основе кэша правил переписывания в памяти.

  • Переписыванию подлежат такие запросы: SELECT, INSERT, REPLACE, UPDATE и DELETE.

    Переписыванию подлежат автономные запросы и подготовленные запросы. Запросы, встречающиеся в определениях представлений или хранимых программах, переписыванию не подлежат.

  • Плагин Rewriter использует базу данных, названную query_rewrite, содержащую таблицу с именем rewrite_rules. Таблица обеспечивает постоянное хранилище правил, которые плагин использует для принятия решения о переписывании запросов. Пользователи взаимодействуют с плагином, изменяя набор правил, хранящихся в этой таблице. Плагин взаимодействует с пользователями, устанавливая столбец message строк таблицы.

  • База данных query_rewrite содержит хранимую процедуру с именем flush_rewrite_rules(), которая загружает содержимое таблицы правил в плагин.

  • Функция загрузки с именем load_rewrite_rules() используется хранимой процедурой flush_rewrite_rules().

  • Плагин Rewriter предоставляет системные переменные, которые позволяют настраивать плагин, и переменные состояния, которые предоставляют информацию об операциях во время выполнения. Этот плагин также поддерживает привилегию (SKIP_QUERY_REWRITE), которая защищает запросы данного пользователя от переписывания.

В следующих разделах описано, как установить и использовать плагин Rewriter, и представлена справочная информация о связанных с ним элементах.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/rewriter-query-rewrite-plugin.html

Spec-Zone.ru

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