— db — 1 min read
いままでは
grant all on hoge.* to 'hoge'@'localhost' identified by 'password';
でユーザーの作成と権限の付与ができたのですが、これをしてみると
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by 'password'' at line 1
というエラー。
MySQL 8以降は上記のコマンドで実行できないようです。
ユーザーを作成と権限付与を別々に行うことで解決しました。
create user 'hoge'@'localhost' identified by 'password';
これと
grant all on hoge.* to hoge@localhost;
最後にこれで読み込みます。
flush privileges;
下記のページを参考にさせていただきました。
ありがとうございました。
MySQL8.0ではGRANT構文でユーザを作成できない – guro_chanの手帳
How to grant all privileges to root user in MySQL 8.0 – Stack Overflow