Cómo solucionar el error de requerimientos sobre el password en MySQL

Author
By Darío Rivera
Posted on 2020-09-21 in MySQL

Después de la instalación de MySQL por lo general utilizamos el comando mysql_secure_installation para configurar el password del usuario root, eliminar las bases de datos y usuarios de test y configurar la política de passwords. Si configuraste la política de password en MEDIUM o superior es probable que al intentar crear un usuario obtengas un error como el siguiente:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

Para esto tienes la opción de crear una contraseña mas fuerte. Sin embargo, muchas veces estamos en un entorno de desarrollo y realmente no nos interesa mucho esta política y queremos colocar contraseñas fáciles de recordar y configurar en nuestras aplicaciones. Lo primero que debes hacer es verificar el nivel de la política de passwords ejecutando el siguiente comando en la consola de mysql.

SHOW VARIABLES LIKE 'validate_password%';

Obtendrás un resultado similar al siguiente:

+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password.check_user_name    | ON     |
| 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      |
+--------------------------------------+--------+
7 rows in set (0.04 sec)

En este caso la política está configurada en MEDIUM. Para cambiar esto basta cambiar el valor de la variable global respectiva y colocarla en LOW.

SET GLOBAL validate_password.policy=LOW;

Puedes hacer esta configuración permanente agregándola al archivo de configuración de mysql. Este archivo suele llamarse my.cfn (Unix) o default.cfn (Windows). La localización de este archivo depende mucho de cómo fue instalado mysql y en qué sistema operativo. Basta agregar esta variable con su valor respectivo.

[mysqld]
validate_password.policy=LOW

Si te ha gustado este artículo puedes invitarme a tomar una taza de café


Acerca de Darío Rivera

Author

Ingeniero de desarrollo en PlacetoPay , Medellín. Darío ha trabajado por más de 6 años en lenguajes de programación web especialmente en PHP. Creador del microframework DronePHP basado en Zend y Laravel.

Sólo aquellos que han alcanzado el éxito saben que siempre estuvo a un paso del momento en que pensaron renunciar.