web-dev-qa-db-ja.com

MySQLユーザーアカウントのリストを取得する方法

私はMySQLのコマンドラインユーティリティを使用しており、データベース内を移動できます。今私はユーザーアカウントのリストを見る必要があります。これどうやってするの?

私はMySQLのバージョン5.4.1を使っています。

1270
burntsugar

このクエリを使用してください。

SELECT User FROM mysql.user;

これは次のようなテーブルを出力します。

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

Matthew Scharley がこの答えのコメントで指摘しているように 、あなたが唯一のユニークなユーザー名を見たいのであればUserカラムでグループ化することができます。

1791
George Claghorn

MySQLにはユーザーレコードを区別するために重要なHostフィールドが含まれているので、この形式が最も便利であると思います。

select User,Host from mysql.user;
425
spkane

ユーザーアカウントは、ユーザー名とホストレベルのアクセス権で構成されます。

したがって、これはすべてのユーザーアカウントを指定するクエリです。

SELECT CONCAT(QUOTE(user),'@',QUOTE(Host)) UserAccount FROM mysql.user;
112
RolandoMySQLDBA

異なるOriginから接続したときにユーザーが重複するのを防ぐ

select distinct User from mysql.user;
47
Nicolas Manzini

実際のMySQLユーザーを参照しているのであれば、

select User from mysql.user;
28
Jesse Vogt

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 |
|                  | %         |
+------------------+-----------+
25
VPK
SELECT * FROM mysql.user;

これは大きなテーブルなので、どのフィールドを選択するかについてもっと選択的になることをお勧めします。 

20
Etzeitet

Rootとしてmysqlにログインし、次のクエリを入力します。 

select User from mysql.user;

+------+
| User |
+------+
| amon |
| root |
| root |
+------+
17
sandip divekar

Mysql.dbテーブルは、ユーザー権限を決定する上でおそらくより重要です。 GRANTコマンドでテーブルに言及した場合、その中にエントリーが作成されると思います。私の場合、mysql.usersテーブルは、明らかに接続して選択することができた場合など、そのユーザーに対するアクセス許可を示していません.

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

PeterとJesseは正しいですが、最初にmysql DBを選択するようにしてください。

use mysql;

select User from mysql.user;

それはあなたのトリックをするべきです

11
Armin Nehzat

私はこれを使ってユーザーを分類しているので、許可されたホストを見つけるのはもっと簡単です:

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

これにより、一意のユーザーの一覧が表示されます。

SELECT DISTINCT User FROM mysql.user;
9
Nikhil Chavda
$>  mysql -u root -p -e 'Select user from mysql.user' > allUsersOnDatabase.txt

Linuxプロンプトでこのコマンドを実行すると、まずmysql rootユーザーのパスワードを要求されます。正しいパスワードを入力すると、すべてのデータベースユーザーがテキストファイルに出力されます。

4

DMLとDDLの特権に関する追加情報を提供するので、私は彼のものがより有用であることがわかりました

SELECT user, Select_priv, Insert_priv , Update_priv, Delete_priv, 
       Create_priv, Drop_priv, Shutdown_priv, Create_user_priv 
FROM mysql.user;
3
hi-zir
SELECT User FROM mysql.user;

上記のクエリを使用してMySQLユーザーを取得します。

0
Arun Karnawat