是否需要将MySQL用户添加到MySQL“系统”中?

时间:2012-07-05 22:49:45

标签: mysql sql username

是否需要将MySQL用户添加到MySQL“系统”?

我正在学习MySQL基础知识,但这个问题刚刚出现。原因如下:

:~$ mysql -u johndoe
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 50
Server version: 5.5.24-0ubuntu0.12.04.1 (Ubuntu)

Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.   

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SELECT User();
+-------------------+
| User()            |
+-------------------+
| johndoe@localhost |
+-------------------+
1 row in set (0.00 sec)

mysql> quit
Bye

当然我没有设置一个名为johndoe的用户,但似乎我可以用任何用户名输入mysql。我不是说我会看到任何数据库,因为它可能没有设置任何johndoe可以做某事的数据库。

所以我的问题最终是:这是真的还是我看错了?

1 个答案:

答案 0 :(得分:1)

实际上,MySQL将您作为匿名用户(''@ localhost)连接起来,因为用户“johndoe @ localhost”不存在。运行“SELECT CURRENT_USER()”,你会看到我的意思,如果你检查mysql数据库中的用户表,你会找到一行host ='localhost'和user =''。