mySQL上的mysql.user表

时间:2012-02-14 13:31:58

标签: mysql macos root account

我在Mac OS上使用mySQL。 我通过命令

登录mySQL
  

mysql - u root

然后运行以下命令

  

从mysql.user中选择User;

显示下表

+---------+
| User    |
+---------+
| root    |
| root    |
|         |
| root    |
|         |
| gerrit2 |
| root    |
+---------+
7 rows in set (0.08 sec)

我不明白有4行有root,2行没有名字。 请解释一下。 谢谢!

2 个答案:

答案 0 :(得分:3)

mysql.users中的行定义部分是(主机,用户)元组 - 这意味着:

  • 您可以拥有没有用户名的权限,具体取决于您从哪个主机连接
  • 您可以使用相同的用户名拥有不同的权限,这取决于主机

答案 1 :(得分:1)

您可以在mysql.user表中为同一用户创建多条记录,因为根据用户连接的主机,您可以拥有不同的密码和/或权限。如果你运行select *,你会看到差异。