При попытке создать триггер в RDS возникает ошибка о двоичном логировании

При попытке создать триггер в RDS возникает ошибка о двоичном логировании

При попытке создать триггер в RDS возникает следующая ошибка:

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)

Есть ли способ получить привилегии SUPER или отключить двоичное логирование?

решение1

Я не знаю, есть ли способ получить привилегии SUPER, но есть способ отключить двоичное логирование (тем самым устраняя необходимость иметь привилегии SUPER для создания триггеров). Это делается путем установки переменнойlog_bin_trust_create_function_creatorsк 1.

  1. Создать новую группу параметров RDS. В качестве альтернативы вы можете изменить текущую группу параметров (если это не группа параметров по умолчанию) и пропустить шаги 3–5.
  2. Измените значение log_bin_trust_create_function_creatorsна 1 для этой группы параметров.
  3. Также измените любые параметры, имеющие значения, отличные от значений по умолчанию, в группе параметров, которую в данный момент использует ваш экземпляр RDS. Это необходимо, поскольку экземпляр RDS может быть связан только с одной группой параметров
  4. Измените свой экземпляр RDS так, чтобы он использовал новую группу параметров.
  5. Дождитесь, пока изменение группы параметров отобразится в журнале событий.
  6. Перезапустить экземпляр RDS. log_bin_trust_create_function_creatorsпомечен как динамический, и поэтому не должен требовать перезапуска, но мне всегда нужно было перезапускать экземпляр RDS, чтобы изменения вступили в силу. Возможно, есть другой способ, но я его не нашел.

Связанный контент