1

各セッション ユーザーのアクティビティを非常に高いレベルでテーブルに保存したいと考えています。プロシージャ「audit.login_trigger」を書きました。必要なスキーマ (監査 DB とテーブル) を作成しました。このようなものです。

CREATE PROCEDURE audit.login_trigger()
SQL SECURITY DEFINER
BEGIN
  INSERT INTO audit.audit_connect (thread_id, user, login_ts)
  VALUES (CONNECTION_ID(), USER(), NOW());
END;

これを「init_connect」内に配置しました。

SET GLOBAL init_connect="CALL audit.login_trigger()";

これをすべてのユーザー接続に対して実行したい。この PROCEDURE に対する EXECUTE 権限を root ユーザーに付与しましたが、root ユーザーがログインしたときに、期待どおりに監査スキーマが入力されません。ここで何がうまくいかなかったのでしょうか?

前もって感謝します。

4

1 に答える 1