暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL的SQL语句 - 数据库管理语句 - 账户管理语句 - SET DEFAULT ROLE 语句

林员外聊编程 2021-02-24
165
SET DEFAULT ROLE 语句
 
SET DEFAULT ROLE
{NONE | ALL | role [, role ] ...}
TO user [, user ] ...
复制
 
对于紧跟在 TO 关键字之后指定的每个用户,此语句定义当用户连接到服务器并进行身份验证时,或当用户在会话期间执行 SET ROLE DEFAULT 语句时,哪些角色变为活动角色。
 
SET DEFAULT ROLE 是 ALTER USER ... DEFAULT ROLE 语句的替代语法。但是,ALTER USER 只能为单个用户设置默认值,而 SET DEFAULT ROLE 可以为多个用户设置默认值。另一方面,可以指定 CURRENT_USER 作为 ALTER USER 语句的用户名,但不能在 SET DEFAULT ROLE 中使用。
 
SET DEFAULT ROLE 需要以下权限:
 
● 为其他用户设置默认角色需要全局 CREATE USER 权限或 mysql.default_roles 系统表的 UPDATE 权限。
 
● 为自己设置默认角色不需要特殊权限,只要想要的默认角色已被授予给自己。
 
角色名称使用格式示例:
 
SET DEFAULT ROLE administrator, developer TO 'joe'@'10.0.0.1';
复制
 
如果省略,角色名的主机名部分默认为 '%'。
 
DEFAULT ROLE 关键字后面的子句允许这些值:
 
● NONE:将默认值设置为 NONE(无角色)。
 
● ALL:将默认值设置为授予账户的所有角色。
 
● role [, role ] ...:将默认值设置为指定的角色,这些角色必须存在并在执行 SET DEFAULT ROLE 时授予账户。
 
注意
 
SET DEFAULT ROLE 和 SET ROLE DEFAULT 是不同的语句:
 
SET DEFAULT ROLE 定义在帐户会话中默认要激活的帐户角色。
 
SET ROLE DEFAULT 将当前会话中的活动角色设置为当前账户默认角色。
 
 
 
官方文档:
https://dev.mysql.com/doc/refman/8.0/en/set-default-role.html

文章转载自林员外聊编程,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论