MySQLのrootパスワードを強化しても、再度パスワード変更を求められてしまう。
お世話になります。
データベースの権限付与がうまく行かずご教示いただきたいです。
目的
rootアカウントで作成したユーザーとデータベースを作成。
作成したデータベースに対して、作成したユーザーが操作できる様に権限を付与。
現状
操作
rootでログインした状態ですでに追加指定しているユーザーに対して、localhostからでもデータベースに接続できる様に設定。
$ mysql>GRANT ALL ON db.* TO 'admin'@'localhost';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
rootのパスワードの強度が低いのが原因かと思い、下記くらいの強度に変更。(実際は別のパスワードです)
上記を再度実行するも同じエラー。
GpkdEdTGB@+fTRfQyTWxJ;,hzRmZiPq*WwxVDgxzmt2^DcquHwyE$oxUz#BYvVFA
passwordのヴァリデーションポリシー(?)
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 8 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | MEDIUM |
| validate_password_special_char_count | 1 |
+--------------------------------------+--------+
操作に乗せたパスワードなので、公式に載っている下記の要件は満た背ているかと思います。
MEDIUM ポリシーは、パスワードが最低 1 つの数値文字を含み、1 つの小文字および大文字を含み、1 つの特殊文字 (英数字以外)
を含む必要があるという条件を追加します。
以上です。
関係ないかもしれませんが、設定も反映して見ましたが変わりませんでした。
mysql>flush privileges;
これはもっと難解パスワードを指定すればいい(何が足りない)のでしょうか?
それとも、他の方法で解決できるのでしょうか?
お手数をおかけしますがご教示願います。
追記
解決しました。
GRANT ALL ON db.* TO 'admin'@'localhost' identified by 'GpkdEdTGB@+fTRfQyTWxJ;,hzRmZiPq*WwxVDgxzmt2^DcquHwyE$oxUz#BYvVFA';
てっきり、root側の事を言っているのだと思っていたのですが、設定するユーザーのパスワードがないと言う事でした。