[MySQL] DB接続ユーザの情報取得を行う

カテゴリ: MySQL

MySQLでユーザの情報を取得する方法です。

ユーザ一覧を取得する

SELECT User, Host, Password FROM mysql.user;

 ユーザ権限を確認する

SHOW GRANTS FOR root@'%';
SHOW GRANTS FOR root@localhost;
SHOW GRANTS FOR root@'127.0.0.1';
...

ユーザ一覧からshow grants文を作る

SELECT concat('show grants for ''', User, '''@''', Host, '''') FROM mysql.user;

cilから非対話でshow grants文を取得

mysqlの"-e"オプションを使って、非対話で結果を取得する方法です。 

mysql -u root -e "SELECT concat('show grants for ''', User, '''@''', Host, ''';') FROM mysql.user;"

cliでgrants文をダンプ

上記の処理でshow grants文を取得し、さらに非対話でそれを実行する方法です。

mysql -u root -e "SELECT concat('show grants for ''', User, '''@''', Host, ''';') FROM mysql.user;" -N | mysql -u root -N

mysql.userにある*_priv列の意味

テーブルを検索した結果Nになっている場合は、"権限"に書かれた操作を行えません


Amazonでおトクに買い物する方法
AmazonチャージでポイントGET


Amazonは買いもの前にAmazonギフト券をチャージしてポイントをゲットしないと損!

こちらもおススメ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です