Spec-Zone.ru › MySQL 5.7

5.6.1 Установка и удаление загружаемых функций

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

Во время загрузки загружаемой функции информация о ней доступна, как описано в разделе 5.6.2, «Получение информации о загружаемых функциях».

  • Установка загружаемых функций

  • Удаление загружаемых функций

  • Переустановка или обновление загружаемых функций

Установка загружаемых функций

Для ручной загрузки загружаемой функции используйте оператор CREATE FUNCTION. Например:

CREATE FUNCTION metaphon
  RETURNS STRING
  SONAME 'udf_example.so';

Имя файла зависит от вашей платформы. Распространённые расширения — .so для Unix и Unix-подобных систем, .dll для Windows.

CREATE FUNCTION имеет следующие эффекты:

  • Функция загружается на сервер, делая её немедленно доступной.

  • Функция регистрируется в таблице системы mysql.func, чтобы сохраниться после перезагрузки сервера. По этой причине CREATE FUNCTION требует привилегии INSERT для системной базы данных mysql.

Автоматическая загрузка загружаемых функций происходит во время нормальной последовательности запуска сервера. Сервер загружает функции, зарегистрированные в таблице mysql.func. Если сервер запущен с опцией --skip-grant-tables, зарегистрированные функции не загружаются и недоступны.

Удаление загружаемых функций

Для удаления загружаемой функции используйте оператор DROP FUNCTION. Например:

DROP FUNCTION metaphon;

DROP FUNCTION имеет следующие эффекты:

  • Функция разгружается, чтобы сделать её недоступной.

  • Функция удаляется из таблицы системы mysql.func. По этой причине DROP FUNCTION требует привилегии DELETE для системной базы данных mysql. Так как функция больше не зарегистрирована в таблице mysql.func, сервер не загружает функцию при последующих перезапусках.

Во время загрузки загружаемой функции информация о ней доступна из таблицы системы mysql.func. См. раздел 5.6.2, «Получение информации о загружаемых функциях». CREATE FUNCTION добавляет функцию в таблицу, а DROP FUNCTION удаляет её.

Переустановка или обновление загружаемых функций

Для переустановки или обновления разделяемой библиотеки, связанной с загружаемой функцией, выполните оператор DROP FUNCTION, обновите разделяемую библиотеку, а затем выполните оператор CREATE FUNCTION. Если вы обновите разделяемую библиотеку сначала, а затем используете DROP FUNCTION, сервер может неожиданно завершиться.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/function-loading.html

Spec-Zone.ru

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