次のステートメントは、影響を受けるユーザーまたは定義者の名前 (場合によってはホスト) のかわりに CURRENT_USER()
関数の使用をサポートしています:
DROP USER
RENAME USER
GRANT
REVOKE
CREATE FUNCTION
CREATE PROCEDURE
CREATE TRIGGER
CREATE EVENT
CREATE VIEW
ALTER EVENT
ALTER VIEW
SET PASSWORD
バイナリロギングが有効で、これらのステートメントのいずれかで CURRENT_USER()
または CURRENT_USER
が定義者として使用されている場合、MySQL Server はステートメントがレプリケートされるときに、ソースとレプリカの両方の同じユーザーにステートメントが適用されることを確認します。 場合によっては、パスワードを変更するステートメントなど、ステートメントにユーザー名が含まれるように、関数参照がバイナリログに書き込まれる前に展開されます。 他のすべての場合、ソースの現在のユーザーの名前はメタデータとしてレプリカにレプリケートされ、レプリカはレプリカの現在のユーザーではなく、メタデータで指定された現在のユーザーにステートメントを適用します。