MySql - Script pour créer un utilisateur et une base de données mot de passe haché
En suivant les instructions à ce lien, je suis en train d'utiliser la syntaxe suivante pour créer un utilisateur avec un mot de passe
DROP DATABASE IF EXISTS forum;
CREATE DATABASE forum;
DELETE FROM mysql.user WHERE Host='localhost' AND User='forum_admin';
#In this way, the password will not be logged in mysql history
SELECT @password:=PASSWORD('forum_admin');
GRANT ALL PRIVILEGES ON forum.* TO 'forum_admin'@'localhost' IDENTIFIED BY PASSWORD '@password';
FLUSH PRIVILEGES;
Toutefois, l'avant-dernière instruction donne cette erreur
ERROR 1827 (HY000): The password hash doesn't have the expected format. Check if the correct password algorithm is being used with the PASSWORD() function.
Alors, comment puis-je le résoudre? Je ne veux pas insérer manuellement le résultat de la SELECT @password
(comme expliqué ici ou ici par exemple), mais je voudrais utiliser ces résultats afin de créer automatiquement un nouvel utilisateur.
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas besoin de créer la table de hachage, les mots de passe sont déjà stockées en tant que de hachage..
C'est ainsi qu'un nouvel utilisateur est créé
Dans votre code:
Changement
à
Une autre façon de créer
Je rencontre ce problème aussi. Peut-être vous devriez obtenir votre mot de passe de la valeur de hachage
puis exécuter la subvention de commande
Tout sera ok.
Voici le lien:http://shareolite.blogspot.com/2014/03/how-to-solve-mysql-error-1827-hy000.html
Bonne chance!
Cela a fonctionné pour moi. Espérons qu'il sera utile.