Documentation Home

13.7.7.12 显示创建用户语句

SHOW CREATE USER user

此语句显示CREATE USER创建指定用户的语句。如果用户不存在,则会发生错误。该语句需要系统模式的 SELECT权限 mysql,但查看当前用户的信息除外。对于当前用户, 需要系统表的SELECT权限才能 在子句中显示密码哈希;否则,哈希显示为 . mysql.userIDENTIFIED AS<secret>

要命名帐户,请使用第 6.2.4 节“指定帐户名称” 中描述的格式 。帐户名的主机名部分(如果省略)默认为'%'. 也可以指定 CURRENT_USERCURRENT_USER()引用与当前会话关联的帐户。

IDENTIFIED WITHoutput from 子句中 显示的密码哈希值SHOW CREATE USER可能包含不可打印的字符,这些字符会对终端显示和其他环境产生不利影响。启用 print_identified_with_as_hex 系统变量(自 MySQL 8.0.17 起可用)会导致 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语句。请参阅 第 13.7.7.21 节,“SHOW GRANTS 语句”