MySQLの一般ユーザでトリガ:log_bin_trust_function_creators

Maharaのアップグレードができないのでログを見てみると

[code]
[DBG] db (lib/dml.php:157) mysqli error: [1419: 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)] in EXECUTE("CREATE TRIGGER "testtrigger" BEFORE INSERT ON "testtable" FOR EACH ROW BEGIN END;")
[/code]

と、maharaユーザでトリガの権限がないとのことのようだ。バイナリロギングを明示的に有効にしたかどうかは忘れたのだがたしかに出力されている。ということなので log_bin_trust_function_creators 変数を設定すれば良い。

[code]
mysql> show variables like ‘log_bin_trust_function_creators’;
+———————————+——-+
| Variable_name | Value |
+———————————+——-+
| log_bin_trust_function_creators | OFF |
+———————————+——-+
1 row in set (0.00 sec)
mysql> SET GLOBAL log_bin_trust_function_creators = 1;
[/code]

参考

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です