运行SELECT USER(),CURRENT_USER();on
Ubuntu 18.04 mariadb 10.4
我不知道为什么在登录(即使使用-h)时,我会从添加用户中获得根@%而不是root@localhost....prevents。
| USER() | CURRENT_USER() |
+----------------+----------------+
| root@localhost | root@% |发布于 2022-01-26 01:24:18
您将以用户根身份从主机本地主机登录,这与从任意主机连接的用户根相匹配。您可以查看如何使用以下方法设置此用户:
show grants for root@`%`;您可以检查是否也有root@localhost用户的授权:
show grants for root@localhost;发布于 2022-01-26 05:14:12
USER()显示由客户端提供的登录名,以便进行身份验证,加上由客户端连接的MySQL服务器检测到的主机名。
CURRENT_USER()显示从与客户端提供的名称匹配的所有帐户名称中选择的帐户名,并检测到主机。
无法管理此选择。
如果您从本地主机连接并需要使用root@localhost进行身份验证,则使用套接字(而不是IP )连接类型。
如果您从另一个主机连接,而不是从本地主机连接,则不能使用root@localhost进行身份验证,因为它不匹配。
https://stackoverflow.com/questions/70857568
复制相似问题