ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
MySQL and Maria DB Logo |
This error happened when I tried to create a new MySQL user using CREATE USER, turn out it doesn't work on MySQL 5.6 and later
CREATE USER 'adam'@'%' IDENTIFIED BY '5x0kCU9PDQMi4EZQZr1h';
The error message is stated as below
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
Solution
Then i try reading MySQL documentation and I got solution by using this simple command below to solve the problemSET GLOBAL validate_password_policy = LOW;
Notice that i am using MySQL version 5.7, maybe on other version have different variable name, and the other doesn't have it at all. So to check if that variable is exist in your MySQL version, using this command below
SHOW VARIABLES LIKE 'validate_password%';
The problem was that i believe MySQL version after 5.6 have strict password to be at least Medium level, so either you are using Password with many combination, or just set the Password policy to low will solve the problem.
Here's the password policy in MySQL, what password will be allowed based on the policy you choose.
LOW
This policy will test the password length only. You must specify passwords to be at least 8 characters long. You can still change the length by modifying validate_password_length.
MEDIUM
This policy requires your passwords to contain at least 1 numeric character, 1 lowercase character, 1 uppercase character, and 1 special (non alphanumeric) character. Still you can change these values, by modifying validate_password_number_count, validate_password_mixed_case_count, and validate_password_special_char_count.
STRONG
This policy adds the condition that password substrings of length 4 or longer must not match words in the dictionary file, if one has been specified. To specify the dictionary file, modify validate_password_dictionary_file.