【问题标题】:Mariadb on Ubuntu the user I'm for CURRENT_USER is root@% and not root@localhostUbuntu 上的 Mariadb 我为 CURRENT_USER 使用的用户是 root@% 而不是 root@localhost
【发布时间】:2022-01-26 01:00:22
【问题描述】:

运行 SELECT USER(),CURRENT_USER();开

Ubuntu 18.04 mariadb 10.4.

我不确定为什么在登录时(即使使用 -h)我得到的是 root@% 而不是 root@localhost....阻止我添加用户。

| USER()         | CURRENT_USER() |
+----------------+----------------+
| root@localhost | root@%         |

【问题讨论】:

  • 为了获得更好的帮助,请展示您尝试添加用户的方式以及添加用户时会发生什么。

标签: mysql ubuntu mariadb


【解决方案1】:

您正在以用户 root 身份从主机 localhost 登录,这与从任意主机连接的用户 root 匹配。你可以看看你是如何设置这个用户的:

show grants for root@`%`;

您可以通过以下方式检查root@localhost 用户是否也有授权:

show grants for root@localhost;

【讨论】:

    【解决方案2】:

    USER() 显示客户端提供的用于进行身份验证的登录名以及客户端连接的 MySQL 服务器检测到的主机名。

    CURRENT_USER() 显示从与客户端提供的名称和检测到的主机匹配的所有名称中选择的帐户名称。

    您无法管理此选择。

    如果您从本地主机连接并且需要使用root@localhost 进行身份验证,则使用套接字,而不是 IP,连接类型。

    如果您从另一台主机而不是本地主机连接,则root@localhost 不能用于身份验证,因为它不匹配。

    【讨论】:

      猜你喜欢
      • 2017-09-19
      • 1970-01-01
      • 1970-01-01
      • 2019-06-05
      • 1970-01-01
      • 2019-07-24
      • 2020-09-22
      • 2016-09-29
      • 2014-09-10
      相关资源
      最近更新 更多