如何使用MySQL中的命令行获取用户帐户列表?

时间:2009-07-16 03:23:54

标签: mysql command-line mysql5

我正在使用MySQL命令行实用程序,可以浏览数据库。现在我需要查看用户帐户列表。我怎么能这样做?

我正在使用MySQL版本5.4.1

15 个答案:

答案 0 :(得分:1810)

使用此查询:

SELECT User FROM mysql.user;

将输出如下表:

+-------+
| User  |
+-------+
| root  |
+-------+
| user2 |
+-------+

作为Matthew Scharley points out in the comments on this answer,如果您只想查看唯一的用户名,则可以按User列进行分组。

答案 1 :(得分:437)

我发现这种格式最有用,因为它包含了主机字段,这在MySQL中很重要,可以区分用户记录。

select User,Host from mysql.user;

答案 2 :(得分:113)

用户帐户包含用户名和主机级别访问权限。

因此,这是提供所有用户帐户的查询

SELECT CONCAT(QUOTE(user),'@',QUOTE(host)) UserAccount FROM mysql.user;

答案 3 :(得分:48)

以避免用户在从不同来源连接时重复使用:

select distinct User from mysql.user;

答案 4 :(得分:30)

如果您指的是实际的MySQL用户,请尝试:

select User from mysql.user;

答案 5 :(得分:27)

MySQL将用户信息存储在自己的数据库中。数据库的名称为MySQL。在该数据库中,用户信息位于表中,数据集名为user。如果要查看在MySQL用户表中设置的用户,请运行以下命令:

SELECT User, Host FROM mysql.user;

+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| root             | localhost |
| root             | demohost  |
| root             | 127.0.0.1 |
| debian-sys-maint | localhost |
|                  | %         |
+------------------+-----------+

答案 6 :(得分:22)

SELECT * FROM mysql.user;

这是一张大桌子,所以你可能希望对你选择的领域更有选择性。

答案 7 :(得分:18)

以root身份登录mysql并输入以下查询

select User from mysql.user;

+------+
| User |
+------+
| amon |
| root |
| root |
+------+

答案 8 :(得分:15)

mysql.db表在确定用户权限时可能更重要。我想如果你在GRANT命令中提到一个表,就会创建一个条目。在我的情况下,当mysql.users表显然能够连接和选择等时,它没有显示用户的权限。

mysql> select * from mysql.db;
mysql> select * from db;
+---------------+-----------------+--------+-------------+-------------+-------------+--------
| Host          | Db              | User   | Select_priv | Insert_priv | Update_priv | Del...

答案 9 :(得分:12)

我使用它来对用户进行排序,因此更容易发现允许的主机:

mysql> SELECT User,Host FROM mysql.user ORDER BY User,Host;

答案 10 :(得分:11)

彼得和杰西是正确的,但只要确保你首先选择mysql数据库。

use mysql;

select User from mysql.user;

应该做你的伎俩

答案 11 :(得分:9)

显示唯一身份用户列表:

SELECT DISTINCT User FROM mysql.user;

答案 12 :(得分:4)

$>  mysql -u root -p -e 'Select user from mysql.user' > allUsersOnDatabase.txt

在linux提示符下执行此命令将首先询问mysql root用户的密码,在提供正确的密码时会将所有数据库用户打印到文本文件中。

答案 13 :(得分:3)

我发现他的一个更有用,因为它提供了有关DML和DDL权限的其他信息

FSharp.Core

答案 14 :(得分:0)

SELECT User FROM mysql.user;

使用上述查询获取Mysql用户