Réinitialisation du mot de passe phpmyadmin oublié

24

J'ai récemment installé LAMP sur Ubuntu 13.04 (32 bits) mais j'ai oublié mon mot de passe phpMyAdmin . Comment puis-je réinitialiser son mot de passe sans le réinstaller?

tHe_VaGaBonD
la source

Réponses:

40

Modifiez ou réinitialisez simplement votre mot de passe racine MySQL en procédant comme suit:

  1. Arrêtez le serveur MySQL

    sudo service mysql stop
    
  2. Démarrez mysqld

    sudo mysqld --skip-grant-tables &
    
  3. Connectez-vous à MySQL en tant que root

    mysql -u root mysql
    
  4. Changez MYSECRET avec votre nouveau mot de passe root

    UPDATE user SET Password=PASSWORD('MYSECRET') WHERE User='root'; FLUSH PRIVILEGES; exit;
    
  5. Tuez mysqld

    sudo pkill mysqld
    
  6. Démarrez mysql

    sudo service mysql start
    
  7. Connectez-vous à phpmyadmin en tant que root avec votre nouveau mot de passe

jctoledo
la source
Pouvez-vous expliquer l'utilisation de # 2 Démarrer mysqld? De plus, comment pourrai-je exécuter # 3 puisque je ne me souviens plus de mon mot de passe MySQL?
tHe_VaGaBonD
1
L'idée pour # 2 est que vous générez une version du démon MySQL sans mot de passe. Cela vous permet de le réinitialiser à l'étape 4.
jctoledo
En utilisant Ubuntu 16, je n'ai pas pu exécuter mysqld manuellement - en essayant de créer un fichier socket et socket lock dans un répertoire qui n'existait même pas! Mais si vous regardez la réponse très NEXT (qui n'est pas la réponse acceptée), c'est ce dont j'avais besoin - j'ai bêtement oublié le mot de passe de l'utilisateur phpmyadmin, et le voici, en clair, dans le dossier phpmyadmin.conf!
Brian B
ERREUR 1054 (42S22): colonne inconnue 'Mot de passe' dans 'liste de champs'
Tiago Gouvêa
30

Vous n'avez pas réellement besoin de réinitialiser votre nom d'utilisateur et votre mot de passe, si vous pouvez les voir.

Dans votre fenêtre de terminal, saisissez:

sudo -H gedit /etc/dbconfig-common/phpmyadmin.conf

Cela ouvrira vos configurations phpmyadmin.

Là, vous verrez votre nom d'utilisateur sous dbc_dbuser='your_username'et votre mot de passe sous dbc_dbpass='your_password'.

thephoenix01
la source
Je n'ai pas pu trouver le chemin ** / etc / dbconfig-common / **. "MySQL Database" et "Apache Web Server" fonctionnent correctement. Toute suggestion !! J'essaie de travailler sur Wordpress.
CoDe
N'oubliez pas de redémarrer mysql "sudo service mysql restart"
alnassre
1
J'ai trouvé un utilisateur appelé phpmyadmin, mais pas mon rootutilisateur principal . Cet utilisateur n'avait pas non plus l'autorisation d'ajouter de nouveaux utilisateurs ou bases de données!
Yahya Uddin
1
Bonne solution!
mistery_girl
6

Il existe une solution de contournement sur Debian (Ubuntu, Mint, etc.) où il y a un deuxième compte administrateur généré automatiquement par le système appelé

debian-sys-maint

Vous pouvez voir (et ne pas modifier) ​​son mot de passe via

sudo nano /etc/mysql/debian.cnf

Il est possible (bien sûr sur Ubuntu 16.04) d'utiliser ce compte aussi bien dans phpMyAdmin que dans la ligne de commande

mysql -u debian-sys-maint -p

Le compte a exactement les mêmes privilèges que la racine de phpMyAdmin / MySQL.

Petr Kosvanec
la source