Comment récupérer le mot de passe mysql dans Ubuntu 16.04

Version Mysql – mysql Ver 14.14 Dissortingb 5.7.18, pour Linux (x86_64) utilisant le wrapper EditLine.

J’avais oublié mon mot de passe et essayé de nombreuses commandes en ligne. De plus, le problème est que la commande des tables d’octroi ne fonctionne pas dans mon terminal.

~$ cat /etc/issue Ubuntu 16.04.3 LTS \n \l ~$ aptitude show mysql-server |grep Version Version: 5.7.20-0ubuntu0.16.04.1 

Dans le fichier: /etc/mysql/debian.cnf sont deux lignes importantes:

 user = debian-sys-maint password =  

Utilisez cet utilisateur et ce mot de passe pour vous connecter à mysql: Une fois connecté en tant que debian-sys-maint, vous pouvez:

 FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; 

1) Arrêtez le serveur de firebase database. sudo systemctl stop mysql

2) Redémarrage du serveur de firebase database sans vérification des permissions. Pour cette commande suivante, sudo mysqld_safe --skip-grant-tables --skip-networking &

3) Connectez-vous à la firebase database en tant qu’utilisateur root root mysql -u root

4) Changer le mot de passe racine

 FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; 

5) Redémarrer le serveur de firebase database

 sudo kill `cat /var/run/mysqld/mysqld.pid` sudo systemctl start mysql 

Maintenant, connectez-vous avec le nouveau mot de passe dans la firebase database: mysql -u root -p

Ou vous pouvez suivre le lien suivant:

https://www.digitalocean.com/community/tutorials/how-to-reset-your-mysql-or-mariadb-root-password

Les réglages suivants fonctionnent pour ma configuration:

 $ sudo mkdir /var/run/mysqld $ sudo chown mysql: /var/run/mysqld $ sudo kill -9 $(sudo cat /var/run/mysqld/mysqld.pid)