MySQL 8.0 リファレンスマニュアル MySQL NDB Cluster 8.0 を含む

このページは機械翻訳したものです。

13.7.1.11 SET ROLE ステートメント

SET ROLE {
    DEFAULT
  | NONE
  | ALL
  | ALL EXCEPT role [, role ] ...
  | role [, role ] ...
}

SET ROLE では、付与されたロールのうちアクティブなロールを指定することで、現行セッション内の現行ユーザーの有効な権限が変更されます。 付与されるロールには、ユーザーに明示的に付与されるロールと、mandatory_roles システム変数値で指定されるロールが含まれます。

例:

SET ROLE DEFAULT;
SET ROLE 'role1', 'role2';
SET ROLE ALL;
SET ROLE ALL EXCEPT 'role1', 'role2';

各ロール名は、セクション6.2.5「ロール名の指定」 で説明されている形式を使用します。 ロール名のホスト名部分は、省略すると'%'にデフォルト設定されます。

ユーザーに (ロールを介してではなく) 直接付与された権限は、アクティブなロールに対する変更の影響を受けません。

このステートメントは、次の役割指定子を許可します:

注記

SET DEFAULT ROLESET ROLE DEFAULT は異なるステートメントです:

  • SET DEFAULT ROLE では、アカウントセッション内でデフォルトでアクティブ化するアカウントロールを定義します。

  • SET ROLE DEFAULT は、現在のセッション内のアクティブロールを現在のアカウントのデフォルトロールに設定します。

ロールの使用例は、セクション6.2.10「ロールの使用」 を参照してください。