5.5.4 Плагин переписывания запросов Rewriter
MySQL поддерживает плагины переписывания запросов, которые могут анализировать и, возможно, изменять SQL-запросы, полученные сервером, перед их выполнением. См. Плагины переписывания запросов.
В дистрибутивах MySQL включён плагин переписывания запросов postparse, называемый Rewriter, и скрипты для установки плагина и связанных элементов. Эти элементы работают вместе, чтобы обеспечить SELECT возможности переписывания:
Плагин на стороне сервера, называемый
Rewriter, анализируетSELECTоператоры и может переписывать их на основе кэша правил переписывания в оперативной памяти. СамостоятельныеSELECTоператоры иSELECTоператоры в подготовленных операторах подвергаются переписыванию.SELECTоператоры, встречающиеся в определениях представлений или хранимых процедурах, не подвергаются переписыванию.Плагин
Rewriterиспользует базу данных, названнуюquery_rewrite, содержащую таблицу, названнуюrewrite_rules. Таблица предоставляет постоянное хранилище для правил, которые плагин использует для принятия решения о переписывании операторов. Пользователи взаимодействуют с плагином, изменяя набор правил, хранящихся в этой таблице. Плагин взаимодействует с пользователями, устанавливая значение столбцаmessageстрок таблицы.База данных
query_rewriteсодержит хранимую процедуру, названнуюflush_rewrite_rules(), которая загружает содержимое таблицы правил в плагин.Загружаемая функция, названная
load_rewrite_rules(), используется хранимой процедуройflush_rewrite_rules().Плагин
Rewriterпредоставляет системные переменные, которые позволяют настраивать плагин, и переменные состояния, которые предоставляют информацию о работе во время выполнения.
В следующих разделах описано, как установить и использовать плагин Rewriter, а также предоставлена справочная информация о связанных элементах.
© 2025 Oracle
Licensed under the GPLv2 License.