このページは機械翻訳したものです。
CREATE ROLE [IF NOT EXISTS] role [, role ] ...
CREATE ROLE
では、権限の名前付きコレクションである 1 つ以上のロールが作成されます。 このステートメントを使用するには、グローバル CREATE ROLE
または CREATE USER
権限が必要です。 read_only
システム変数が有効になっている場合、CREATE ROLE
にはさらに CONNECTION_ADMIN
権限 (または非推奨の SUPER
権限) が必要です。
作成されたロールはロックされ、パスワードがなく、デフォルトの認証プラグインが割り当てられます。 (これらのロール属性は、後で ALTER USER
ステートメントを使用して、グローバル CREATE USER
権限を持つユーザーが変更できます。)
CREATE ROLE
は、すべての名前付きロールに対して成功するか、ロールバックされ、エラーが発生しても効果はありません。 デフォルトでは、すでに存在するロールを作成しようとするとエラーが発生します。 IF NOT EXISTS
句が指定されている場合、ステートメントは、エラーではなく、すでに存在する名前付きロールごとに警告を生成します。
ステートメントが成功した場合はバイナリログに書き込まれますが、失敗した場合は書き込まれず、ロールバックが発生して変更は行われません。 バイナリログに書き込まれるステートメントには、すべての名前付き役割が含まれます。 IF NOT EXISTS
句が指定されている場合は、すでに存在していて作成されていないロールも含まれます。
各ロール名は、セクション6.2.5「ロール名の指定」 で説明されている形式を使用します。 例:
CREATE ROLE 'administrator', 'developer';
CREATE ROLE 'webapp'@'localhost';
ロール名のホスト名部分は、省略すると'%'
にデフォルト設定されます。
ロールの使用例は、セクション6.2.10「ロールの使用」 を参照してください。