运行SELECT USER((,CURRENT_USER(;在上
Ubuntu 18.04马里亚德布10.4。
我不知道为什么在登录时(即使使用-h(我会得到root@%notroot@localhost....prevents我无法添加用户。
| USER() | CURRENT_USER() |
+----------------+----------------+
| root@localhost | root@% |
您以用户root身份从主机localhost登录,这与从任意主机连接的用户root相匹配。你可以看看你是如何设置这个用户的:
show grants for root@`%`;
您可以检查是否也有授予root@localhost
用户:
show grants for root@localhost;
USER()
显示客户端为要进行身份验证提供的登录名,以及客户端连接的MySQL服务器检测到的主机名。
CURRENT_USER()
显示从与客户端和检测到的主机提供的名称匹配的所有帐户名称中选择的帐户名称。
您无法管理此选择。
如果您从localhost进行连接,并且需要使用root@localhost
进行身份验证,则使用套接字(而不是IP(连接类型。
如果从另一台主机而不是从localhost连接,则root@localhost
不能用于身份验证,因为它不匹配。