MySQL 8.4 发行说明
SHOW CREATE USER user
此语句显示用于创建指定用户的 CREATE USER
语句。如果用户不存在,则会发生错误。该语句需要 mysql
系统模式的 SELECT
权限,但查看当前用户的信息除外。对于当前用户,需要 mysql.user
系统表的 SELECT
权限才能显示 IDENTIFIED AS
子句中的密码哈希值;否则,哈希值将显示为 <secret>
。
要命名帐户,请使用 第 8.2.4 节“指定帐户名” 中描述的格式。帐户名称中的主机名部分(如果省略)默认为 '%'
。也可以指定 CURRENT_USER
或 CURRENT_USER()
来引用与当前会话关联的帐户。
在 SHOW CREATE USER
输出的 IDENTIFIED WITH
子句中显示的密码哈希值可能包含不可打印字符,这些字符会对终端显示和其他环境产生负面影响。启用 print_identified_with_as_hex
系统变量会导致 SHOW CREATE USER
将此类哈希值显示为十六进制字符串,而不是常规字符串字面量。即使启用了此变量,不包含不可打印字符的哈希值仍将显示为常规字符串字面量。
mysql> CREATE USER 'u1'@'localhost' IDENTIFIED BY 'secret';
mysql> SET print_identified_with_as_hex = ON;
mysql> SHOW CREATE USER 'u1'@'localhost'\G
*************************** 1. row ***************************
CREATE USER for u1@localhost: CREATE USER `u1`@`localhost`
IDENTIFIED WITH 'caching_sha2_password'
AS 0x244124303035240C7745603626313D613C4C10633E0A104B1E14135A544A7871567245614F4872344643546336546F624F6C7861326932752F45622F4F473273597557627139
REQUIRE NONE PASSWORD EXPIRE DEFAULT ACCOUNT UNLOCK
PASSWORD HISTORY DEFAULT PASSWORD REUSE INTERVAL DEFAULT
PASSWORD REQUIRE CURRENT DEFAULT
要显示授予帐户的权限,请使用 SHOW GRANTS
语句。请参阅 第 15.7.7.22 节 “SHOW GRANTS 语句”。