MySQLユーザ管理

システムデータベース選択

 use mysql

ユーザ一覧確認

 SELECT User, Host FROM user

ユーザ権限確認

 SHOW GRANTS FOR 'root'@'localhost';

ユーザ追加

localhostから接続許可

 CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass';
 GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'

全ホストから接続許可(%)・ユーザを作成できるユーザ(WITH GRANT OPTION)

 CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass';
 GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%' WITH GRANT OPTION

権限を限定・DBを限定

 GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
   ON bankaccount.* TO 'custom'@'localhost';

パスワードなし

 CREATE USER 'monty'@'%';

ユーザ削除

 DROP USER 'jeffrey'@'localhost';

パスワード更新

 SET PASSWORD FOR 'jeffrey'@'localhost' = PASSWORD('mypass');

シェルからmysqladminコマンドでパスワード更新

 mysqladmin -u user_name -h host_name password "newpwd"

(validate_password プラグインが有効な場合)パスワードポリシー

現在のポリシーの確認

 SHOW VARIABLES LIKE 'validate_password%';
 

ポリシーの変更

 SET GLOBAL validate_password_length=4; 最低4文字以上
 SET GLOBAL validate_password_policy=MEDIUM; 最低1つの数値、1つの小文字および大文字、1つの特殊文字 (英数字以外) を含む
 SET GLOBAL validate_password_policy=MEDIUM; パスワードの長さのみテスト

補足

  • 以上はアカウントを作成するためのステートメント (CREATE USER や GRANT など) を利用してユーザ管理する方法だが、INSERT、UPDATE、DELETE などのステートメントを使用して、MySQL 付与テーブルを直接操作して、ユーザ管理することもできる。

参考


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

Last-modified: 2017-07-24 (月) 09:44:55