Spec-Zone .ru
спецификации, руководства, описания, API

15.7.4. MySQL Proxy Scripting

15.7.4.1. Последовательность Сценариев прокси Во время Инжекции Запроса
15.7.4.2. Внутренние Структуры
15.7.4.3. Получение Соединения с connect_server()
15.7.4.4. Исследование Квитирования с read_handshake()
15.7.4.5. Исследование Учетных данных Аутентификации с read_auth()
15.7.4.6. Доступ к информации об Аутентификации сread_auth_result()
15.7.4.7. Управление Запросами с read_query()
15.7.4.8. Управление Результатами с read_query_result()

Можно управлять, как MySQL Proxy управляет и работает с запросами и результатами, которые передаются серверу MySQL с помощью встроенного языка сценариев Lua. Можно узнать больше о языке программирования Lua от Веб-сайта Lua.

Следующая схема показывает краткий обзор классов, представленных MySQL Proxy.

Архитектура MySQL Proxy

Основное взаимодействие между MySQL Proxy и сервером обеспечивается, определяя одну или более функций через сценарий Lua. Много функций поддерживаются согласно различным событиям и операциям в коммуникационной последовательности между клиентом и одним или более серверами MySQL бэкэнда:

Следующая таблица приводит прокси MySQL и коммуникационные функции сервера, предоставленную информацию, и направление информационного потока, когда функция инициирована.

Функция Предоставленная информация Направление
connect_server() Ни один Клиент к Серверу
read_handshake() Ни один Сервер Клиенту
read_auth() Ни один Клиент к Серверу
read_auth_result() Ни один Сервер Клиенту
read_query() Запрос Клиент к Серверу
read_query_result() Результат запроса Сервер Клиенту

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

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