L’erreur #1045 lors d’une authentification dans phpMyAdmin ou MySQL est souvent du à un mauvais utilisateur ou mot de passe.
Pour se sortir le doute, nous allons dans un premier temps vérifier que l’utilisateur et le mot de passe fonctionnent bien, pour cela, conectez-vous en SSH sur votre serveur et tapez ceci :
root#mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2766 Server version: 5.0.95 Source distribution ....... mysql>
L’utilisateur de MySQL est le plus souvent root. Si vous obtenez l’invite de commande mysql>, c’est que votre couple utilisateur/mot de passe fonctionne. Faite un ctrl+c ou tapez « exit » pour sortir.
Votre mot de passe ne fonctionne pas, pas de panique, nous allons le re-initialiser. On commence par stopper le serveur pour le faire tourner en mode dégradé (Cette commande peut être un peu différente suivant votre distribution) :
root# /etc/init.d/mysqld stop ou root#/etc/init.d/mysql stop
Rajouter sudo si vous n’avez pas les droits root (« sudo /etc/init.d/mysql stop).
Maintenant, on lance MySQL en ignorant les privilèges et en refusant les connexions externe au serveur car tous les utilisateurs deviennent root sur le serveur MySQL. Il est donc conseillé de couper Apache ou tout autre applicatif pouvant accéder à MySQL le temps du changement du mot de passe:
root#mysqld_safe –skip-grant-tables –skip-networking &root# mysql -u root mysql > use mysql ; mysql > update user set password=PASSWORD(“monpassword”) where User=’root’ ; mysql > flush privileges ; mysql > quit ; root# /etc/init.d/mysqld start
On oublie pas de terminer en relançant le serveur MySQL.
J’attends vos commentaires pour enrichir cet article de vos mauvaises expériences avec toujours des solutions.