我正在使用MySQL命令行实用程序,可以在数据库中导航。现在我需要查看用户帐户列表。我该怎么做呢?
我使用的是MySQL 5.4.1版本。
我正在使用MySQL命令行实用程序,可以在数据库中导航。现在我需要查看用户帐户列表。我该怎么做呢?
我使用的是MySQL 5.4.1版本。
当前回答
SELECT * FROM mysql.user;
这是一个很大的表,所以您可能希望在选择的字段上更有选择性。
其他回答
Peter和Jesse是正确的,但是要确保您首先选择了“mysql”数据库。
use mysql;
select User from mysql.user;
这应该能达到你的目的。
以root用户登录MySQL,输入以下查询:
select User from mysql.user;
+------+
| User |
+------+
| amon |
| root |
| root |
+------+
使用这个查询:
SELECT User FROM mysql.user;
它将输出一个这样的表:
+-------+
| User |
+-------+
| root |
+-------+
| user2 |
+-------+
正如Matthew Scharley在关于这个答案的评论中指出的那样,如果您只想看到唯一的用户名,您可以根据User列进行分组。
用户帐户包括用户名和主机级访问权限。
因此,这是提供所有用户帐户的查询
SELECT CONCAT(QUOTE(user),'@',QUOTE(host)) UserAccount FROM mysql.user;
我发现这种格式最有用,因为它包含了在MySQL中区分用户记录的重要的主机字段。
select User,Host from mysql.user;