各セッション ユーザーのアクティビティを非常に高いレベルでテーブルに保存したいと考えています。プロシージャ「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 ユーザーがログインしたときに、期待どおりに監査スキーマが入力されません。ここで何がうまくいかなかったのでしょうか?
前もって感謝します。