Вопрос: Как получить список учетных записей пользователей MySQL


Я использую утилиту командной строки MySQL и могу перемещаться по базе данных. Теперь мне нужно увидеть список учетных записей пользователей. Как я могу это сделать?

Я использую версию MySQL 5.4.1,


1202


источник


Ответы:


Используйте этот запрос:

SELECT User FROM mysql.user;

Что будет выводить таблицу следующим образом:

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

Как Мэтью Scharley указывает в комментариях к этому ответу , вы можете группировать Userесли вы хотите видеть только уникальные имена пользователей.


1720



Я считаю этот формат наиболее полезным, так как он включает в себя поле хоста, которое важно в MySQL, чтобы различать записи пользователей.

select User,Host from mysql.user;

411



Учетная запись пользователя содержит имя пользователя и доступ к хосту.

Таким образом, это запрос, который дает все учетные записи пользователей

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

106



чтобы избежать повторений пользователей при их подключении из разных источников:

select distinct User from mysql.user;

44



Если вы имеете в виду фактических пользователей MySQL, попробуйте:

select User from mysql.user;

25



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 |
|                  | %         |
+------------------+-----------+

22



SELECT * FROM mysql.user;

Это большой стол, поэтому вы можете быть более избирательным в том, какие поля вы выберете.


19



Login to mysql as root and type following query

select User from mysql.user;

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

15



The mysql.db table is possibly more important in determining user rights. I think an entry in it is created if you mention a table in the GRANT command. In my case the mysql.users table showed no permissions for a user when it obviously was able to connect and select, etc.

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

13



Peter and Jesse are correct but just make sure you first select the mysql DB.

use mysql;

select User from mysql.user;

that should do your trick


10



I use this to sort the users, so the permitted hosts are more easy to spot:

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

9



here display List of unique users.

SELECT DISTINCT User FROM mysql.user;

6