- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2019-09-25T20:04:14+09:00","default:ryuichi","ryuichi")
#author("2019-09-25T22:19:49+09:00","default:ryuichi","ryuichi")
* ユーザ管理 - 5.7以降 [#m748f154]
** ユーザ一覧確認 [#d89f1938]
SELECT User, Host FROM mysql.user;
*** 現在ログインしているユーザを確認 [#g3a4f479]
SELECT USER();
** ユーザ作成 [#radb0c40]
CREATE USER 'taro'@'localhost' IDENTIFIED BY 'my_password';
- https://dev.mysql.com/doc/refman/5.7/en/create-user.html
*** アカウント名の指定 [#m8295e5b]
CREATE USER 'taro'@'localhost'; # localhostのみ許可
CREATE USER 'taro'@'%'; # '%'ですべてのホストを許可
CREATE USER 'taro'; # 指定しない場合は'%'すべてのホストになる
- https://dev.mysql.com/doc/refman/5.7/en/account-names.html
*** 空のパスワードでユーザ作成 [#lea4c0e7]
CREATE USER 'taro'@'localhost';
- 上で空のパスワードのユーザ作成できるが、MySQLの設定でパスワードなしのユーザのログインを禁止していることが多い。その場合、その禁止設定を修正する必要がある
** ユーザ権限設定 [#raabc142]
GRANT ALL PRIVILEGES ON *.* TO 'taro'@'localhost'
- https://dev.mysql.com/doc/refman/5.7/en/grant.html
*** 管理者ユーザの権限設定 [#p484761d]
GRANT ALL PRIVILEGES ON *.* TO 'taro'@'localhost' WITH GRANT OPTION
- WITH GRANT OPTIONで他のユーザにGRANTできる
- 一般ユーザには不要だが、管理者ユーザを作成する場合に設定する
** ユーザ削除 [#re27627a]
DROP USER 'taro'@'%';
https://dev.mysql.com/doc/refman/5.7/en/drop-user.html
** パスワード設定 [#f073e25a]
ALTER USER 'taro'@'localhost' IDENTIFIED BY 'my_password';
ALTER USER USER() IDENTIFIED BY 'my_password' # 現在ログインしているユーザを指定
- https://dev.mysql.com/doc/refman/5.7/en/alter-user.html
*** SET PASSWORD (廃止予定) [#lf51cb63]
SET PASSWORD FOR 'jeffrey'@'localhost' = 'auth_string';
SET PASSWORD = 'auth_string';
- バージョン5.7の時点でSET PASSWORDは使用可能だが、DEPRECATEDで廃止予定になっている
- https://dev.mysql.com/doc/refman/5.7/en/set-password.html
*** PASSWORD() (廃止済み) [#ob4e2ba9]
SELECT PASSWORD('my_password');
- バージョン5.7.6からPASSWORD()は廃止されている
** 参考 [#k2937216]
- https://stackoverflow.com/questions/32208000/update-user-password-in-mysql-5-7