登録ユーザの確認
5.7.6でpasswordカラムがauthentication_stringに変更されました。
旧バージョン
mysql> SELECT host,user,password FROM mysql.user;
5.7.6以降
mysql> SELECT Host,User,Plugin,authentication_string FROM mysql.user; +-----------+---------------+-----------------------+-------------------------------------------+ | Host | User | Plugin | authentication_string | +-----------+---------------+-----------------------+-------------------------------------------+ | localhost | root | mysql_native_password | ***************************************** | | localhost | mysql.session | mysql_native_password | ***************************************** | | localhost | mysql.sys | mysql_native_password | ***************************************** | +-----------+---------------+-----------------------+-------------------------------------------+ 3 rows in set (0.01 sec)
ユーザの登録
grantを使うとwarningが出る(登録はできる)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'test-user'@'localhost' IDENTIFIED BY 'testpasswd' WITH GRANT OPTION; Query OK, 0 rows affected, 1 warning (0.01 sec)
MySQL5.7からはCREAT USERで登録してからGRANTが推奨される
ASを使うとハッシュされず平文のまま登録 mysql> CREATE USER 'test-user'@'localhost' IDENTIFIED WITH mysql_native_password AS 'testpasswd'; BYを使うとハッシュされる mysql> CREATE USER 'test-user'@'localhost' IDENTIFIED WITH mysql_native_password BY 'testpasswd'; 権限登録 mysql> GRANT ALL PRIVILEGES ON *.* TO 'test-user'@'localhost'; 反映 mysql> FLUSH PRIVILEGES;
ユーザの削除
DELETEで削除したユーザを再度登録するとエラーがでる。ユーザ削除はDROP USERで行わなければならない。
DROP USER 'test-user'@'localhost';
参考
https://yoku0825.blogspot.jp/2015/06/mysql-57.html