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

MySQL的SQL语句 - 数据库管理语句 - 账户管理语句 - RENAME USER 语句

林员外聊编程 2021-02-22
222

RENAME USER 语句

 

RENAME USER old_user TO new_user
[, old_user TO new_user] ...
复制

 

RENAME USER 语句重命名现有的 MySQL 帐户。如果对不存在的旧帐户进行重命名,或者将账号命名成已存在的帐户将发生错误。

 

要使用 RENAME USER,必须具有全局 CREATE USER 权限,或者 mysql 系统架构的 UPDATE 权限。启用 read_only 系统变量时,RENAME USER 还需要 CONNECTION_ADMIN 权限(或不推荐使用的 SUPER 权限)。

 

从 MySQL 8.0.22 开始,如果要重命名的帐户被命名为任何存储对象的 DEFINER 属性,RENAME USER 将失败,并报错。(也就是说,如果重命名帐户会导致存储对象成为孤立对象,则该语句将失败。)要执行该操作,必须具有 SET_USER_ID 权限;在这种情况下,该语句将成功,但是会提示警告信息,而不是失败报错。

 

账户名称使用格式示例:

 

RENAME USER 'jeffrey'@'localhost' TO 'jeff'@'127.0.0.1';
复制

 

如果省略,账户名的主机名部分默认为 '%'。

 

RENAME USER 使新用户与旧用户拥有相同的权限。但是,对于旧用户创建的数据库或其中的对象,RENAME USER 不会自动删除或使之无效。这包括 DEFINER 属性为旧用户的存储程序或视图。如果在定义者安全上下文中执行,则尝试访问此类对象可能会产生错误。

 

 

 

官方网址:

https://dev.mysql.com/doc/refman/8.0/en/rename-user.html

 


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

评论