Плагин переменных пользователя
Плагин user_variables создаёт таблицу USER_VARIABLES в базе данных INFORMATION_SCHEMA. Эта таблица содержит информацию о переменных, определённых пользователем.
Установка плагина
В текущих версиях плагин user_variables по умолчанию статически связан с сервером, поэтому его не нужно устанавливать.
До версии MariaDB 10.2.6, хотя общая библиотека плагина распространялась с MariaDB по умолчанию, сам плагин не устанавливался по умолчанию. Существует два способа установки плагина с MariaDB.
Первый метод позволяет установить плагин без перезапуска сервера. Вы можете установить плагин динамически, выполнив INSTALL SONAME или INSTALL PLUGIN. Например:
INSTALL SONAME 'user_variables';
Второй метод позволяет указать серверу загрузить плагин при запуске. Плагин можно установить таким образом, используя параметры --plugin-load или --plugin-load-add. Это можно указать в качестве аргумента командной строки для mysqld или в соответствующей группе параметров сервера в файле параметров группа параметров в файле параметров. Например:
[mariadb] ... plugin_load_add = user_variables
Удаление плагина
Вы можете удалить плагин динамически, выполнив UNINSTALL SONAME или UNINSTALL PLUGIN. Например:
UNINSTALL SONAME 'user_variables';
Если вы установили плагин, используя параметры --plugin-load или --plugin-load-add в соответствующей группе параметров сервера в файле параметров группа параметров в файле параметров, то эти параметры следует удалить, чтобы предотвратить загрузку плагина при следующем запуске сервера.
Примеры
SELECT * FROM information_schema.USER_VARIABLES ORDER BY VARIABLE_NAME; +---------------+----------------+---------------+--------------------+ | VARIABLE_NAME | VARIABLE_VALUE | VARIABLE_TYPE | CHARACTER_SET_NAME | +---------------+----------------+---------------+--------------------+ | var | 0 | INT | utf8 | | var2 | abc | VARCHAR | utf8 | +---------------+----------------+---------------+--------------------+
Очистка переменных, определённых пользователем
Переменные, определённые пользователем, сбрасываются, а таблица Information Schema очищается с помощью оператора FLUSH USER_VARIABLES.
SET @str = CAST(123 AS CHAR(5)); SELECT * FROM information_schema.USER_VARIABLES ORDER BY VARIABLE_NAME; +---------------+----------------+---------------+--------------------+ | VARIABLE_NAME | VARIABLE_VALUE | VARIABLE_TYPE | CHARACTER_SET_NAME | +---------------+----------------+---------------+--------------------+ | str | 123 | VARCHAR | utf8mb3 | +---------------+----------------+---------------+--------------------+ FLUSH USER_VARIABLES; SELECT * FROM information_schema.USER_VARIABLES ORDER BY VARIABLE_NAME; Empty set (0.000 sec)
Версии
| Версия | Статус | Введена |
|---|---|---|
| 1.0 | Стабильная | MariaDB 10.3.13 |
| 1.0 | Гамма | MariaDB 10.2.6 |
| 1.0 | Альфа | MariaDB 10.2.0 |
Параметры
user_variables
-
Описание: Управляет тем, как сервер должен обрабатывать плагин при запуске.
- Допустимые значения:
-
OFF- Отключает плагин без удаления его из таблицы mysql.plugins. -
ON- Включает плагин. Если плагин не может быть инициализирован, сервер всё равно продолжит запуск, но плагин будет отключён. -
FORCE- Включает плагин. Если плагин не может быть инициализирован, сервер не сможет запуститься с ошибкой. -
FORCE_PLUS_PERMANENT- Включает плагин. Если плагин не может быть инициализирован, сервер не сможет запуститься с ошибкой. Кроме того, плагин нельзя удалить с помощью UNINSTALL SONAME или UNINSTALL PLUGIN во время работы сервера.
-
- Дополнительную информацию см. в разделе Обзор плагинов: Настройка активации плагинов при запуске сервера.
- Допустимые значения:
-
Командная строка:
--user-variables=value -
Тип данных:
enumerated -
Значение по умолчанию:
ON -
Допустимые значения:
OFF,ON,FORCE,FORCE_PLUS_PERMANENT
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/user-variables-plugin/