私がしようとしているのは、いくつかのテーブルで動作するストアドファンクションとトリガをいくつか作成することです。私はそれらのいずれかのために、私はMySQLのエラー#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)
)を取得します。SUPER権限を持たないストアドファンクションとトリガの作成
私はmysql
のuser
テーブルをチェックし、自分のユーザー名がHeadAdmin
で、私のホスト名が%
であることがわかります。 DEFINERを[email protected]%
に設定しようとしましたが、動作しません。 user
テーブルに戻って、そのように設定してみてください(Super_priv
カラムが存在します)。それでも動作しません(文字通りエラーです)。
log_bin_trust_function_creators
変数の使用方法はわかりません。なぜか安全性が低いです。トリガーとストアドファンクションを作成するにはどうしたらいいですか?それはむしろ、彼らは(また、彼らは、彼らが何をしているか知っていることを意味するものでなければならない)SUPER
権限を保持することを要求するよりも、記憶されたプログラムを作成し、ユーザーが何をしているか知っていることを信頼するというだけの理由log_bin_trust_function_creators=1
を設定
Amazon Linux EC2サーバで 'log_bin_trust_function_creators'を設定する方法について詳しく教えてください。私は、デフォルトのファイル、または[mysqld]、またはそのサーバ上で再起動する方法を見つける場所を知らない... –
私はそれを考え出した。/*私は回答形式で投稿します*/ –
非常に明確な説明。 このエラーの背後に詳細な理由が必要な人は、https://dev.mysql.com/doc/refman/5.7/en/stored-programs-logging.html –