Когато създавате MySQL потребител с относително слаба парола, може да срещнете грешката „MySQL ERROR 1819 (HY000):Вашата парола не отговаря на текущите изисквания на правилата ’. Технически това не е грешка, а известие, че използвате парола, която не отговаря на препоръчаните изисквания на правилата за пароли.
С други думи, вие използвате слаба парола, която лесно може да бъде отгатната или принудена. Вграденият механизъм за сигурност обезкуражава потребителите да създават слаби пароли, които могат да направят вашата база данни податлива на пробиви.
Свързана статия :Полезни съвети за отстраняване на често срещани грешки в MySQLНапример, попаднах на грешката при създаване на потребител, както е показано
mysql> create user ‘tecmint’@’localhost’ IDENTIFIED BY ‘mypassword’;
Безсмислено е, че паролата е изключително слаба и може да представлява риск за сигурността.
Как да решим MySQL ГРЕШКА 1819 (HY000) в Linux
MySQL базата данни се доставя с validate_password плъгин, който, когато е активиран, налага политика за валидиране на парола. Има 3 нива на правила за валидиране на парола, които се прилагат от приставката.
- НИСКО :Позволява на потребителите да задават парола от 8 или по-малко знака.
- СРЕДНО :Позволява на потребителите да задават парола от 8 или по-малко знака със смесени главни и специални знаци.
- СИЛНИ :Позволява на потребителите да задават парола, която има всички атрибути на парола от средно ниво с включване на файл с речник.
По подразбиране правилата за пароли са зададени на СРЕДНА . Можете да потвърдите нивото на политика за парола, като изпълните командата:
$ SHOW VARIABLES LIKE 'validate_password%';
Ако изпълните командата и получите изходния празен набор, приставката все още не е активирана.
За да активирате validate_password плъгин, изпълнете командите по-долу.
mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%'; mysql> install plugin validate_password soname 'validate_password.so';
За да потвърдите, че плъгинът е активиран, изпълнете командата.
mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';
Трябва да получите изхода, показан по-долу:
За да разрешите проблема, трябва да зададете политиката за валидиране на паролата на най-ниското ниво. Знам, че това звучи противоречиво, тъй като създава път за задаване на слаби пароли, което в крайна сметка може да доведе до компрометиране на вашата база данни от хакери.
Въпреки това, ако все пак настоявате да се движите по своя начин, ето какво можете да направите.
Как да променя правилата за валидиране на паролата на MySQL
За да разрешите ГРЕШКА НА MySQL 1819 (HY000) грешка, задайте по-ниска политика за валидиране на парола, както е показано.
mysql> SET GLOBAL validate_password_policy=LOW; OR mysql> SET GLOBAL validate_password_policy=0;
След това можете да потвърдите нивото на правилата за валидиране на паролата.
$ SHOW VARIABLES LIKE 'validate_password%';
Сега можете да продължите и да зададете относително слаба парола по ваше желание.
mysql> create user ‘tecmint’@’localhost’ IDENTIFIED BY ‘mypassword’;
За да се върнете към „СРЕДНО ’ ниво на политика за парола, просто извикайте командата:
mysql> SET GLOBAL validate_password_policy=MEDIUM;
Заключение
Лично аз не бих препоръчал задаване на политика за пароли от по-ниско ниво по очевидни причини. Независимо дали става дума за обикновен потребител или потребител на база данни, препоръчително е винаги да задавате силна парола за MySQL с повече от 8 знака с комбинация от главни, малки, цифрови и специални знаци.
Това ръководство е за тези, които искат да знаят как да се ориентират в такава грешка, в противен случай винаги се препоръчва задаване на силна парола.