Skip to content
困った時に思い出したい

【MySQL】grant all on でユーザーが作成できない

db1 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

というエラー。

環境

  • Mac OS X 10.14.6
  • MySQL 8.0.17

原因

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

© 2021 by 困った時に思い出したい. All rights reserved.
Theme by LekoArts