ERROR 1419 (HY000): You do not have the SUPER privilege and binary logging is enabled
Признаки
При импорте функции или триггера в базу данных MySQL возникает следующая ошибка: "ERROR 1419 (HY000): You do not have the SUPER privilege and binary logging is enabled (you might want to use the less safe log_bin_trust_function_creators variable)".
Причины
Ошибка возникает при попытке импортировать функцию или триггер, содержащие опасные операторы, которые вносят изменения в базу данных. Ошибка возникает только в том случае, если на сервере MySQL включена опция двоичного протоколирования, необходимая для репликации.
Решения
Существует несколько решений этой проблемы:
- Вам необходимо указать привилегии SUPER для пользователя, выполняющего импорт в базу данных, вместе с примененными привилегиями CREATE ROUTINE, ALTER ROUTINE, CREATE TRIGGER, ALTER TRIGGER, CREATE FUNCTION и ALTER FUNCTION.
- Если вы хотите разрешить всем пользователям на вашем сервере MySQL, имеющим привилегию CREATE ROUTINE, иметь возможность создавать такие функции, вы можете указать опцию log_bin_trust_function_creators двумя способами:
- Указать при запуске сервера:
<i>--log-bin-trust-function-creators=1</i> - Установить значение 1 с помощью оператора SET GLOBAL:
mysql> SET GLOBAL log_bin_trust_function_creators = 1;
- Указать при запуске сервера:
- Если вы не планируете использовать сервер MySQL для репликации, отключите двоичное протоколирование, удалив опцию
<i>--log-bin</i>из параметров команды утилиты mysqld, запускающей сервер MySQL.
Если у вас есть какие-либо другие вопросы, пожалуйста, свяжитесь с нами: support@convertum.ru