MySQL root 用户无法访问数据库

MySQL root 用户无法访问数据库

我们在生产数据库服务器上有一个 MySQL 数据库(“myhours”),只有一个用户(“edsf”)可以访问,而 root 用户则不能访问。以 root 用户身份执行的命令“SHOW DATABASES”不会列出“myhours”数据库。以“edsf”用户身份执行的相同命令会列出数据库:

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| myhours            |
+--------------------+
2 rows in set (0.01 sec)

只有“edsf”用户可以使用“USE myhours”访问“myhours”数据库。这两个用户似乎都没有权限授予此数据库的进一步权限。

我的问题是:

Q1. root 用户没有权限使用数据库,这是怎么回事?这怎么可能呢?

SHOW GRANTS FOR 'root'@'localhost';

我觉得不错:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*xxx' WITH GRANT OPTION

Q2. 我该如何恢复这种情况,使该数据库对 MySQL 根用户可见并授予其进一步的权限?

在此先感谢您的帮助!
——Ed

答案1

您需要刷新权限

刷新权限;

以 root 身份连接并列出数据库

相关内容