我从 mysql 提示符创建了一个数据库。它被命名为“spring_security_tutorial”。
然后,我创建了一个名为“erdinc@localhost”的用户,并授予该用户“spring_security_tutorial”数据库的所有权限。
这是我以 root 身份连接时的“显示数据库”结果:
mysql> show databases;
+--------------------------+
| Database |
+--------------------------+
| information_schema |
| mysql |
| performance_schema |
| spring_security_tutorial |
| springsecurity |
| test |
+--------------------------+
6 rows in set (0.00 sec)
以下是我以 root 身份连接时“使用 spring_security_tutorial”命令的结果:
mysql> use spring_security_tutorial;
ERROR 1049 (42000): Unknown database 'spring_security_tutorial'
这是命令“select user(), current_user()”的结果:
mysql> select user(), current_user()
+----------------+----------------+
| user() | current_user() |
+----------------+----------------+
| root@localhost | root@localhost |
+----------------+----------------+
1 row in set (0.00 sec)
以下是 root 和 erdinc 用户的权限:
mysql> show grants for 'root'@'localhost';
+---------------------------------------------------------------------+
| Grants for root@localhost |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION |
+---------------------------------------------------------------------+
2 rows in set (0.00 sec)
mysql> show grants for 'erdinc'@'localhost';
+---------------------------------------------------------------------------------------------------------------+
| Grants for erdinc@localhost |
+---------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'erdinc'@'localhost' IDENTIFIED BY PASSWORD '*8DCDD69CE7D121DE8013062AEAEB2A148910D50E' |
| GRANT ALL PRIVILEGES ON `spring_security_tutorial`.* TO 'erdinc'@'localhost' WITH GRANT OPTION |
+---------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)
即使我可以通过“显示数据库”看到它,我也无法将 spring_security_tutorial 数据库用作 root 用户。
此外,当我作为“erdinc@localhost”连接时,我什至无法显示提到的数据库。它只显示 test 和 information_schema 数据库。
我现在正在寻找这个几个小时。实际上,我过去曾经使用过 mysql,要么是使用方式发生了变化,要么是我遗漏了一些非常明显的东西,因为这曾经是一项微不足道的任务。
提前致谢。