J’ai installé la mise à jour Ubuntu 12.04 Precise Pengolin il y a quelques semaines (et je n’aurais pas dû, ma machine laggue comme ce n’est pas permis) et au moment de lancer SAM Broadcaster, un message d’erreur apparaît comme quoi il ne peut se connecter à la base MySQL.
sudo service mysql restart
Résultat :
stop: Unknown instance:
start: Job failed to start
Code language: HTTP (http)
Autre message d’erreur :
/usr/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'
Code language: JavaScript (javascript)
Etrange, je n’avais rien modifié.
Voici donc en quelques étapes comment changer le mot de passe MySQL de l’utilisateur root
lorsqu’on l’a oublié ou qu’il faut le changer sans connaitre l’ancien.
Toutes ces commandes sont à exécuter en tant qu’utilisateur root
donc :
sudo -i
Je vous propose deux méthodes : la première méthode s’adresse aux barbus qui veulent mettre les mains dans le cambouis, la seconde à ceux qui veulent faire ça en 2 commandes.
Méthode 1 (mode cambouis)
Etape 1 : arrêt du service mysql
/etc/init.d/mysql stop
Résultat :
Stopping MySQL database server: mysqld.
Etape 2 : lancement du serveur MySQL sans mot de passe
mysqld_safe --skip-grant-tables &
Résultat :
[1] 5025
mysqld_safe Logging to syslog.
mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Code language: JavaScript (javascript)
Etape 3 : connexion au serveur avec MySQL Monitor
mysql -u root
Résultat :
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.28-0ubuntu0.12.04.2 (Ubuntu)
Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
Code language: JavaScript (javascript)
Etape 4 : mise en place du nouveau mot de passe root
mysql> use mysql;
mysql> UPDATE user SET Password=PASSWORD('nouveau-mdp') WHERE user='root';
mysql> flush privileges;
mysql> quit
Code language: PHP (php)
Etape 5 : redémarrage du serveur MySQL
Et on redémarre le serveur :
/etc/init.d/mysql restart
Méthode 2 (mode mains propres)
sudo dpkg-reconfigure mysql-server-5.5
Code language: CSS (css)
Vous obtenez ceci :
Entrez le nouveau mot de passe, confirmez, validez. Résultat :
[Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins
InnoDB: Compressed tables use zlib 1.2.3.4
InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: Completed initialization of buffer pool
InnoDB: highest supported file format is Barracuda.
InnoDB: Waiting for the background threads to start
InnoDB: 1.1.8 started; log sequence number 1588781
InnoDB: Starting shutdown...
InnoDB: Shutdown completed; log sequence number 1588781
Code language: PHP (php)
Conclusion
N’oubliez pas de supprimer les fichiers logs d’InnoDB, ils peuvent parfois avoir une taille différente de celle qu’attend MySQL et cela pose problème:
sudo rm /var/lib/mysql/ib_logfile*
Code language: JavaScript (javascript)
Et voilà, vous venez de changer le mot de passe MySQL de l’utilisateur root
.
Recherchez-vous un expert WordPress ou WooCommerce sur qui vous pouvez compter? Ne cherchez plus.