Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 14/09/2017, à 20:30

pti-jean

[RÉSOLU] mot de passe mysql perdu...

Bonjour,

J'ai perdu le mot de passe de mysql sur une Kubuntu xenial...
Pour le récupérer j'ai essayé les trucs dans cette page:
https://doc.ubuntu-fr.org/mysql#redefin … se_de_root
mais cela ne fonctionne pas!

Quelqu'un a une idée pour le supprimer ?

JM

Dernière modification par pti-jean (Le 15/09/2017, à 16:41)

Hors ligne

#2 Le 14/09/2017, à 22:03

gl38

Re : [RÉSOLU] mot de passe mysql perdu...

C'est bien étonnant que rien ne marche !
Qu'est-ce qui se passe avec la méthode "compliquée" ?
Cordialement,
Guy

Hors ligne

#3 Le 14/09/2017, à 22:37

pti-jean

Re : [RÉSOLU] mot de passe mysql perdu...

Ce qui ce passe:

$ sudo  service mysql stop
$ sudo /usr/bin/mysqld_safe --skip-grant-tables & mysql -h localhost
[1] 15788
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
$ 2017-09-14T20:31:47.309625Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2017-09-14T20:31:47.310865Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.

[1]+  Termine 1               sudo /usr/bin/mysqld_safe --skip-grant-tables

JM

Hors ligne

#4 Le 14/09/2017, à 22:57

ylag

Re : [RÉSOLU] mot de passe mysql perdu...

Salut,

pti-jean a écrit :

$ sudo /usr/bin/mysqld_safe --skip-grant-tables & mysql -h localhost

Ce sont deux commandes à passer séparément, à mon avis ?
En premier, faire :

sudo /usr/bin/mysqld_safe --skip-grant-tables &

...attendre le retour de l'invite de commande et ensuite passer :

mysql -h localhost

Dernière modification par ylag (Le 14/09/2017, à 22:59)

Hors ligne

#5 Le 14/09/2017, à 23:05

pti-jean

Re : [RÉSOLU] mot de passe mysql perdu...

Donc cela donne ça:

$ sudo  service mysql stop
$ sudo /usr/bin/mysqld_safe --skip-grant-tables &
[1] 19222
$ 2017-09-14T21:01:12.944103Z mysqld_safe Logging to '/var/log/mysql/error.log'.
2017-09-14T21:01:12.945141Z mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exists.

[1]+  Termine 1               sudo /usr/bin/mysqld_safe --skip-grant-tables
$ mysql -h localhost
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

JM

Hors ligne

#6 Le 14/09/2017, à 23:10

pti-jean

Re : [RÉSOLU] mot de passe mysql perdu...

Mais j'ai peut-être un autre pb:

$ mysql -u root
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

JM

Hors ligne

#7 Le 14/09/2017, à 23:16

pti-jean

Re : [RÉSOLU] mot de passe mysql perdu...

Non fosse alerte... apparemment c'est bon:

$ sudo service mysql restart
$ mysql -u root
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

Bon ben j'ai pas le mot de passe!

JM

Dernière modification par pti-jean (Le 14/09/2017, à 23:19)

Hors ligne

#8 Le 15/09/2017, à 11:33

HPIR40

Re : [RÉSOLU] mot de passe mysql perdu...

Hors ligne

#9 Le 15/09/2017, à 11:34

bruno

Re : [RÉSOLU] mot de passe mysql perdu...

Il faut faire :

mysql -u root -p

puis saisir le mot de passe.

Si tu a perdu ton mot de passe tu peux essayer de passer par le compte de maintenance défini dans le fichier /etc/mysql/debian.cnf :

mysql -u debian-sys-maint -p

et coller le mot de passe pris dans le fichier ci-dessus.
Tu pourras ensuite redéfinir ton mot de passe comme indiqué (avec une erreur que j'ai corrigée…) dans la doc ubuntu-fr :

UPDATE mysql.user SET authentication_string = PASSWORD('le_nouveau_mot_de_passe') WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;

Dernière modification par bruno (Le 15/09/2017, à 11:36)

Hors ligne

#10 Le 15/09/2017, à 13:39

pti-jean

Re : [RÉSOLU] mot de passe mysql perdu...

Ça fonctionne pas...
Quelque soit le mot de passe que je donne j'ai le message: "ERROR 1819 (HY000): Your password does not satisfy the current policy requirements" :

mysql> UPDATE mysql.user SET authentication_string = PASSWORD('fzefzefgzergf nttrg afe @!#~ 15873') WHERE User = 'root' AND Host = 'localhost';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

Ou alors où est que ça cloche... c'est quoi la politique de mot de passe ???

JM

Hors ligne

#11 Le 15/09/2017, à 14:04

pti-jean

Re : [RÉSOLU] mot de passe mysql perdu...

Ok... j'ai réussi à valider un mot de passe:

mysql> UPDATE mysql.user SET authentication_string = PASSWORD('Falod 666#') WHERE User = 'root' AND Host = 'localhost';
Query OK, 1 row affected, 1 warning (0,00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0,00 sec)

mysql> 

Il fallait juste des majuscules et des minuscules...
Seul problème quand je fait:

$ mysql -u root -p
Enter password: 
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

Pour temps je copie et colle le mot de passe!

Y a donc un autre pb !

JM

Hors ligne

#12 Le 15/09/2017, à 14:15

gl38

Re : [RÉSOLU] mot de passe mysql perdu...

Tu n'aurais pas dû mettre de blanc au milieu du mot de passe.
Cordialement,
Guy

Hors ligne

#13 Le 15/09/2017, à 14:23

pti-jean

Re : [RÉSOLU] mot de passe mysql perdu...

J'ai aussi essayé avec un mot de passe sans blanc... ça fait le même chose "Access denied"!

Il est où le pb ???

JM

Hors ligne

#14 Le 15/09/2017, à 14:36

bruno

Re : [RÉSOLU] mot de passe mysql perdu...

Essaie avec un mot de passe ne contenant que des lettres (majuscules et minuscules si tu veux) et des chiffres.

Si cela ne fonctionne toujours pas, essaie ceci :

sudo mysql -u root

Hors ligne

#15 Le 15/09/2017, à 15:54

pti-jean

Re : [RÉSOLU] mot de passe mysql perdu...

Bien vu bruno... ta commande fonctionne!
Qu'est que je dois en conclure ???

JM

Hors ligne

#16 Le 15/09/2017, à 16:26

bruno

Re : [RÉSOLU] mot de passe mysql perdu...

Que tu n'as pas besoin de mot de passe root. smile

Sur les versions récentes de MySQL, lorsque aucun mot de passe root n'a été défini à l'installation, c'est le plugin auth_socket qui est utilisé pour l'authentification.
Dans ce cas MySQL n'as pas besoin de mot de passe, il suffit que l'utilisateur UNIX (root quand tu utilises sudo) soit identifié.

Tu peux le vérifier en regardant la table user de la base mysql :

SELECT user, plugin FROM mysql.user;

Si tu veux définir un mot de passe 'root' pour MYSQL de manière « classique » (authentification native MYSQL) il suffit de modifier le plugin de l'utilisateur :

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mon_mot_de_passe';

Hors ligne

#17 Le 15/09/2017, à 16:41

pti-jean

Re : [RÉSOLU] mot de passe mysql perdu...

Ok... merci... me voila rassurer!
Donc j'ai pas de mot de passe root!

Merci,

JM

Hors ligne