Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment réparer "MySQL ERROR 1819 (HY000):" sous Linux

Lors de la création d'un MySQL utilisateur avec un mot de passe relativement faible, vous pouvez rencontrer l'erreur "MySQL ERROR 1819 (HY000) :votre mot de passe ne satisfait pas aux exigences de la politique actuelle '. Techniquement, il ne s'agit pas d'une erreur, mais d'une notification indiquant que vous utilisez un mot de passe qui ne respecte pas les exigences de la politique de mot de passe recommandée.

En d'autres termes, vous utilisez un mot de passe faible qui peut facilement être deviné ou forcé brutalement. Le mécanisme de sécurité intégré décourage les utilisateurs de créer des mots de passe faibles qui peuvent rendre votre base de données sujette aux violations.

Article connexe :Conseils utiles pour résoudre les erreurs courantes dans MySQL

Par exemple, j'ai rencontré l'erreur lors de la création d'un utilisateur, comme indiqué

mysql> create user ‘tecmint’@’localhost’ IDENTIFIED BY ‘mypassword’;

Il va sans dire que le mot de passe est extrêmement faible et peut présenter un risque pour la sécurité.

Comment résoudre l'ERREUR MySQL 1819 (HY000) sous Linux

Le MySQL la base de données est livrée avec un validate_password plugin qui, lorsqu'il est activé, applique une politique de validation de mot de passe. Il existe 3 niveaux de politique de validation de mot de passe qui sont appliqués par le plugin.

  • BAS  :permet aux utilisateurs de définir un mot de passe de 8 caractères maximum.
  • MOYEN  : permet aux utilisateurs de définir un mot de passe de 8 caractères maximum avec des casses mixtes et des caractères spéciaux.
  • FORT  :permet aux utilisateurs de définir un mot de passe qui possède tous les attributs d'un mot de passe de niveau moyen avec l'inclusion d'un fichier de dictionnaire.

Par défaut, la stratégie de mot de passe est définie sur MOYEN . Vous pouvez confirmer le niveau de stratégie de mot de passe en exécutant la commande :

$ SHOW VARIABLES LIKE 'validate_password%';

Si vous exécutez la commande et obtenez l'ensemble vide de sortie, le plug-in n'est pas encore activé.

Pour activer le validate_password plugin, exécutez les commandes ci-dessous.

mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';
mysql> install plugin validate_password soname 'validate_password.so';

Pour confirmer que le plugin est activé, exécutez la commande.

mysql> select plugin_name, plugin_status from information_schema.plugins where plugin_name like 'validate%';

Vous devriez obtenir le résultat ci-dessous :

Pour résoudre le problème, vous devez définir la politique de validation du mot de passe au niveau le plus bas. Je sais que cela semble contre-intuitif car cela crée un moyen de définir des mots de passe faibles qui peuvent finalement compromettre votre base de données par des pirates.

Cependant, si vous insistez toujours pour avoir votre chemin, voici ce que vous pouvez faire.

Comment modifier la politique de validation du mot de passe MySQL

Pour résoudre l'ERREUR MySQL 1819 (HY000) erreur, définissez une politique de validation de mot de passe inférieure, comme indiqué.

mysql> SET GLOBAL validate_password_policy=LOW;
OR
mysql> SET GLOBAL validate_password_policy=0;

Vous pouvez ensuite confirmer le niveau de politique de validation du mot de passe.

$ SHOW VARIABLES LIKE 'validate_password%';

Vous pouvez maintenant continuer et attribuer un mot de passe relativement faible selon votre souhait.

mysql> create user ‘tecmint’@’localhost’ IDENTIFIED BY ‘mypassword’;

Pour revenir au ‘MOYEN ' niveau de stratégie de mot de passe, invoquez simplement la commande :

mysql> SET GLOBAL validate_password_policy=MEDIUM;
Conclusion

Personnellement, je ne recommanderais pas de définir une politique de mot de passe de niveau inférieur pour des raisons évidentes. Qu'il s'agisse d'un utilisateur normal ou d'un utilisateur de base de données, il est recommandé de toujours définir un mot de passe MySQL fort avec plus de 8 caractères avec un mélange de caractères majuscules, minuscules, numériques et spéciaux.

Ce guide est destiné à ceux qui veulent savoir comment naviguer dans une telle erreur, sinon, il est toujours recommandé de définir un mot de passe fort.