24

I recently installed LAMP on Ubuntu 13.04(32-bit) but forgot my phpMyAdmin password. How can I reset its password without re-installing it?

40

Simply change or reset your MySQL root password by doing the following:

  1. Stop the MySQL server

    sudo service mysql stop
    
  2. Start mysqld

    sudo mysqld --skip-grant-tables &
    
  3. Login to MySQL as root

    mysql -u root mysql
    
  4. Change MYSECRET with your new root password

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

    sudo pkill mysqld
    
  6. Start mysql

    sudo service mysql start
    
  7. Login to phpmyadmin as root with your new password

  • Can you please explain the use of #2 Start mysqld? Also, how will I be able to execute #3 since I don't remember my MySQL password anymore? – tHe_VaGaBonD Jul 22 '13 at 16:40
  • 1
    The idea for #2 is that you are spawning a version of the MySQL daemon without a password. This allows you to reset it on step 4. – jctoledo Aug 6 '13 at 15:54
  • Using Ubuntu 16 I was not able to run mysqld manually - trying to create socket and socket lock file in a dir that didn't even exist! But if you look at the very NEXT answer (which is not the accepted answer) that is what I needed - I stupidly forgot the password for the phpmyadmin user, and there it is, in plain text, in the phpmyadmin.conf folder! – Brian B Sep 6 '17 at 18:09
  • ERROR 1054 (42S22): Unknown column 'Password' in 'field list' – Tiago Gouvêa Dec 26 '18 at 17:04
30

You don't actually need to reset your username and password, if you can see them.

In your terminal window, type:

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

This will open your phpmyadmin configurations.

There, you will see your username under dbc_dbuser='your_username' and password under dbc_dbpass='your_password'.

  • I could not able to find **/etc/dbconfig-common/ ** path. Both "MySQL Database" & "Apache Web Server" running successfully. Any suggestion !! This I'm trying to work on Wordpress. – CoDe Aug 1 '16 at 9:41
  • Don't forget to restart mysql " sudo service mysql restart " – alnassre Aug 24 '16 at 15:15
  • 1
    I found a user called phpmyadmin, but not my main root user. That user also did not have permissions to add new users or databases! – Yahya Uddin Aug 24 '16 at 22:57
  • 1
    Nice solution ! – mistery_girl Feb 26 '18 at 17:14
6

There is a workaround on Debian (Ubuntu, Mint, etc.) where there is a second admin account automatically generated by the system called

debian-sys-maint

You can see (and should not change) its password via

sudo nano /etc/mysql/debian.cnf

It is possible (sure on Ubuntu 16.04) to use that account both in phpMyAdmin as well as in the command line

mysql -u debian-sys-maint -p

The account has exactly the same privileges as phpMyAdmin's / MySQL's root.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.