MySQL8でのGRANT文の書き方

docker compose のMySQLコンテナを触っているとMySQL8の仕様変更によりデータベース権限付与コマンドGRANTの書き方が変わったのでコマンド書式をめも。

以前の書き方は一行でデーターベースにパスワード付きユーザーに権限を与えていました。

mysql> GRANT ALL on db_name.* TO db_user@`localhost` IDENTIFIED BY 'user_password';

MySQL8ではCREATE USER文でユーザーをパスワード付きで登録してからGRANT文を使います。


mysql> CREATE USER db_user@`localhost` IDENTIFIED WITH mysql_native_password BY 'user_password'; Query OK, 0 rows affected (0.01 sec) mysql> GRANT ALL on db_name.* TO db_user@`localhost`; Query OK, 0 rows affected, 1 warning (0.01 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.00 sec)

コマンド記法もいろいろフォローしないと宇宙人状態で大変ですが少しずつ勉強します。

参考URL:MySQL 8 でユーザーを作成してデータベースの権限を与えるときは2つに分けてやる

同じカテゴリーの記事

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です