RENAME USER old_user TO new_user
[, old_user TO new_user] ...
该RENAME USER
语句重命名现有的 MySQL 帐户。对于不存在的旧帐户或已存在的新帐户,会发生错误。
要使用RENAME USER
,您必须具有全局CREATE USER
权限或系统数据库UPDATE
权限
。mysql
当
read_only
启用系统变量时,RENAME USER
额外需要SUPER
权限。
每个帐户名都使用 第 6.2.4 节“指定帐户名”中描述的格式。例如:
RENAME USER 'jeffrey'@'localhost' TO 'jeff'@'127.0.0.1';
帐户名的主机名部分(如果省略)默认为
'%'
.
RENAME USER
导致旧用户拥有的特权成为新用户拥有的特权。但是,
RENAME USER
不会自动删除或使旧用户创建的数据库或其中的对象失效。这包括DEFINER
属性命名旧用户的存储程序或视图。如果它们在定义者安全上下文中执行,则尝试访问此类对象可能会产生错误。(有关安全上下文的信息,请参阅
第 20.6 节,“存储对象访问控制”。)
权限更改生效,如 第 6.2.8 节“权限更改何时生效”中所述。