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 (754d)