我正在使用MySQL命令行实用程序,可以在数据库中导航。现在我需要查看用户帐户列表。我该怎么做呢?
我使用的是MySQL 5.4.1版本。
我正在使用MySQL命令行实用程序,可以在数据库中导航。现在我需要查看用户帐户列表。我该怎么做呢?
我使用的是MySQL 5.4.1版本。
当前回答
用户帐户包括用户名和主机级访问权限。
因此,这是提供所有用户帐户的查询
SELECT CONCAT(QUOTE(user),'@',QUOTE(host)) UserAccount FROM mysql.user;
其他回答
使用这个查询:
SELECT User FROM mysql.user;
它将输出一个这样的表:
+-------+
| User |
+-------+
| root |
+-------+
| user2 |
+-------+
正如Matthew Scharley在关于这个答案的评论中指出的那样,如果您只想看到唯一的用户名,您可以根据User列进行分组。
要看到你的用户,就要使用mysql数据库。
USE mysql;
然后进行选择。
SELECT user,host FROM user;
另一种选择是放置BD.Table。
例如:
SELECT user,host FROM mysql.user;
为了避免用户从不同来源连接时出现重复:
select distinct User from mysql.user;
我用这个来对用户进行排序,所以允许的主机更容易被发现:
mysql> SELECT User,Host FROM mysql.user ORDER BY User,Host;
我发现他的一个更有用,因为它提供了关于DML和DDL特权的额外信息
SELECT user, Select_priv, Insert_priv , Update_priv, Delete_priv,
Create_priv, Drop_priv, Shutdown_priv, Create_user_priv
FROM mysql.user;