8

トリガーを作成するための SQL スクリプトの実行を含む、一部のソフトウェアの更新プログラムを展開しています。

私の.sqlファイル構文には、DEFINER 句を含めませんでした。これは、プログラムの実行中に、顧客の実稼働 MySQL ユーザー (顧客自身が設定したもの) がこれらのトリガーを実行できるようにするためです。

つまり、テストでは、MySQL が TRIGGER の DEFINER を自動的に作成することが示されました'CURRENT_USER'@'%'。賢明なことをして、(制限付きの) アカウントを日常のデータ操作に使用し、別のアカウントを大きな更新 (root ?) に使用すると、権限を持たない 1 人または複数のユーザーで TRIGGER を実行しようとすることになります。それをするために。

この「定義者の自動追加」機能を削除する方法はありますか?

入ってみDEFINER = '%'@'%'ましたが受け付けません。

4

1 に答える 1