37

This might seem redundant but I was unable to find a correct solution.

I was unable to login to mysql using the mysql console.It is asking for a password and I have no clue what I actually entered.(Is there a way to get the password or change it?) This is how my config.inc look.

When I try to open phpmyadmin I get this error(#1045 - Access denied for user 'root'@'localhost' (using password: YES))

<?php

/* Servers configuration */
$i = 0;

/* Server: localhost [1] */
$i++;
$cfg['Servers'][$i]['verbose'] = 'localhost';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '3306';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
 $cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'prakash123';
$cfg['Servers'][$i]['AllowNoPassword'] = true;

/* End of servers configuration */

$cfg['DefaultLang'] = 'en-utf-8';
$cfg['ServerDefault'] = 1;
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';


/* rajk - for blobstreaming */
$cfg['Servers'][$i]['bs_garbage_threshold'] = 50;
$cfg['Servers'][$i]['bs_repository_threshold'] = '32M';
$cfg['Servers'][$i]['bs_temp_blob_timeout'] = 600;
$cfg['Servers'][$i]['bs_temp_log_threshold'] = '32M';


?>

I have tried to uninstall( Plus Deleted all the related files) WAMP and reinstall.It didn't help either. While reinstalling WAMP server it is not asking for any username password stuff I don't know why. Any help is highly appreciated.

Prakash
  • 7,794
  • 4
  • 48
  • 44
  • Have you tried to move away the database 'mysql' (which is where the credentials live) and see, if it is recreated on restart? – Eugen Rieck May 30 '13 at 20:58
  • 2
    Look here: http://stackoverflow.com/questions/2703996/how-to-find-out-the-username-and-password-for-mysql-database I'd say that $cfg['Servers'][$i]['password'] = 'prakash123'; prakash123 is your password. – helenbn May 30 '13 at 21:01
  • #2002 Cannot log in to the MySQL server this is the new error I get when moved Mysql @Eugen Rieck – Prakash May 30 '13 at 22:23
  • @helenbn I know prakash123 is my password but I was not able to open PHPMyadmin – Prakash May 30 '13 at 22:24

24 Answers24

38

I first changed the root password running mysql at a prompt with

mysql -u root -p

Update password:

UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';

Edited line in the file config.inc.php with the new root password:

$cfg['Servers'][$i]['password'] = 'MyNewPass'

Stop and re-start mysql service (in Windows: mysql_stop.bat/mysql_start.bat)

and got phpMyAdmin to work!

EDIT 2017: for MySQL≥5.7 use authentication_string in place of Password (see this answer):

`UPDATE mysql.user SET authentication_string=PASSWORD('MyNewPass') WHERE User='root';

`

Ritesh
  • 4,720
  • 6
  • 27
  • 41
user2314737
  • 27,088
  • 20
  • 102
  • 114
10

The problem was I have 2 instances of Mysql installed and I didn't know the password for both instances.Just check if port 80 is used by any of the programs. This is what I did

1.Quit Skype because it was using port 80.(Please check if port 80 is used by any other program).

2.Search for Mysql services in task manager and stop it.

3.Now delete all the related mysql files.Make sure you delete all the files.

4.Reinstall

radbyx
  • 9,352
  • 21
  • 84
  • 127
Prakash
  • 7,794
  • 4
  • 48
  • 44
5

Well, there are many solutions already given above. If there are none of them works, maybe you should just try to reset your password again to 'root' as described here, and then reopen http://localhost/phpMyAdmin/ in other browser. At least this solution works for me.

yunhasnawa
  • 815
  • 1
  • 14
  • 30
3

This worked for me. In your config file

$cfg['Servers']['$i']['password'] = 'yourpassword';

In your mysql shell, login as root

mysql -u root

change your password or update if you've forgotten the old one

UPDATE mysql.user SET Password=PASSWORD('yourpassword') WHERE User='root';

stop and restart your mysql server from the xampp control panel. phpmyadmin can login to see your databases

2

mysql.exe->Run as administrator or go to following path C:\wamp\bin\mysql\mysql5.5.24\bin and than right click on mysql.exe go to properties and than select tab as Compatibility and see the bottom of dialog box in privilege level and just check the Run this program as an administrator and then click apply ok.finished now you open success phpMyadmin. bye

arokiya
  • 21
  • 2
2
  1. mysql -u root -p
  2. UPDATE mysql.user SET Password=PASSWORD('mypass') WHERE User='root';
  3. Flush the privileges: FLUSH PRIVILEGES;
  4. Exit by typing: Exit
  5. Edited line in the file config.inc.php with the new root password: $cfg['Servers'][$i]['password'] = 'mypass'

  6. be succss

ramin rostami
  • 315
  • 3
  • 5
  • UPDATE mysql.user SET Password=PASSWORD('yourpassword') WHERE User='root'; if some one using the mysql5.7. the above update does not work in this version... – zahid Jan 11 '23 at 15:13
2

Go to 'config.inc.php'. Write your password over here - $cfg['Servers'][$i]['password'] =''

halkujabra
  • 2,844
  • 3
  • 25
  • 35
2

This process is quite simple in correcting the the error. What is happening is a failure to connect to phpMyAdmin. In order to fix the problem you simply need to provide the correct password to the system phpMyAdmin configuration file located in apps\phpMyadmin\config.ini.php 1. the root should already be set as user 2. Insert the password between ' ' and that it.

If you still have problems then this means that the user name and /or the password need to be updated or inserted into the DB. to do this use the command line tool and do an update.

UPDATE mysql.user SET Password=PASSWORD('Johnny59 or whatever you want to use') WHERE User='root';

2

Go to config.inc.php, find $cfg['Servers'][$i]['password'] and remove any password provided, i.e change $cfg['Servers'][$i]['password'] = 'password'; with $cfg['Servers'][$i]['password'] = '';

Now you can launch phpMyAdmin

Selecting Users menu from phpMyAdmin, select the root user and click Edit previlidges. Now scroll down to Change Password area, switch between No Password and Password to provide your new password. that's it.

Hussain Rahimi
  • 802
  • 8
  • 19
2

I had the same error today. I had installed Djangostack and when I checked my task manager there were two instances of mysqld running. I checked one was for wamp server and the other was for django stack. I ended the one for django stack, restarted all services in wamp server and I was able to access phpmyadmin

Ngeno
  • 21
  • 3
2

after installation i started wamp and i was asked for user and pass which were already set on default (user:admin pass: dots), and that was wrong with a message from your topic. Than, i just entered:

Username: root 
Password: (leave it empty)

and it worked for me!!

fantja
  • 91
  • 5
2
  1. Go to C:\xampp\phpMyAdmin

  2. Edit the config.inc.php file

  3. Replace $cfg['Servers'][$i]['auth_type'] = 'config'; by $cfg['Servers'][$i]['auth_type'] = 'cookie';

For now on the PHPMyAdmin will ask you for your password, no more error.

ata
  • 3,398
  • 5
  • 20
  • 31
1

Try the following code:

$cfg['Servers'][$i]['password'] = '';

if you see Password column field as 'No' for the 'root' user in Users Overview page of phpMyAdmin.

рüффп
  • 5,172
  • 34
  • 67
  • 113
Peris
  • 29
  • 3
1

with MariaDb, above solutions doesn't works.

Use (exemple below with ubuntu 16.04 and mariadb-server Distrib 10.0.28):

    sudo mysql_secure_installation
    …
    Change the root password? [Y/n] 
    New password: 
bcag2
  • 1,988
  • 1
  • 17
  • 31
1

For UNIX, try this. It worked for me:

  1. connect MySQL use Navicat Premium with inital root/"password"
  2. UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N' WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;
  3. restart MySQL
Sebastian Brosch
  • 42,106
  • 15
  • 72
  • 87
Aaron
  • 19
  • 1
  • 1
    When giving an answer it is preferable to give [some explanation as to WHY your answer](http://stackoverflow.com/help/how-to-answer) is the one. – Stephen Rauch Feb 17 '17 at 02:59
1

I have encountered similar mistakes, and later found that my password is wrong.

管浩浩
  • 63
  • 1
  • 4
0

First you have to go config.inc.php file then change the following instruction

$cfg['Servers'][$i]['user'] ='';
$cfg['Servers'][$i]['password'] =''; 

or

enter image description here

Mahedi Hasan Durjoy
  • 1,031
  • 13
  • 17
0

If you arrived here because you can't log into your phpMyAdmin, then try the root password from your Mysql instead of the password you put during phpMyAdmin installation.

Kaizoku Gambare
  • 3,143
  • 3
  • 29
  • 41
0

Just now I have this situation and I have tried this way which is very easy.

First stop your mysql service using this command:

service mysql stop

and then just again start your mysql service using this command

service mysql start

I hope it may help others... :)

STiLeTT
  • 1,023
  • 10
  • 23
Sachin Shah
  • 4,503
  • 3
  • 23
  • 50
0

After I updated my MySql, I was getting the same error message. It turned out that after installing a different version on MySql, inside the my.ini, the port was different. Previous MySql version had port 3306 but the new one have port 3308. Check your MySql my.ini, if it is different use the port from .ini in your connection.

Guntar
  • 473
  • 8
  • 23
0
php artisan serve 

this command get the env contents for the first time and if you update .env file need to restart it.

in my case my username and dbname is valid and php artisan migrate worked

but need to cntrl+c , to cancel php artisan serve , and run it again

php artisan serve
saber tabatabaee yazdi
  • 4,404
  • 3
  • 42
  • 58
0

Check the name of Environment Variable

Case with me:

  • I was using sqlalchemy in a python-flask project and got this issue.
  • IDE used: PyCharm
  • In my config.py file I had setup SQLALCHEMY_DATABASE_URI as:
SQLALCHEMY_DATABASE_URI = os.getenv("DATABASE_URI")

Mistake I did (it was a silly mistake )

  • While setting evironment_variables in PyCharm, I did:
SQLALCHEMY_DATABASE_URI=<my_db_uri>

Solution

  • I changed the above to:
DATABASE_URI=<my_db_uri>

Namaste

Deepam Gupta
  • 2,374
  • 1
  • 30
  • 33
-1

In the my.ini file in C:\xampp\mysql\bin, add the following line after the [mysqld] command under #Mysql Server:

skip-grant-tables

This should remove the error 1045.

Nander Speerstra
  • 1,496
  • 6
  • 24
  • 29
-1

if multiple myslq running on same port no enter image description here

Right click on wamp and test port 3306 if its wampmysqld64 its correct else change port no and restart server

radbyx
  • 9,352
  • 21
  • 84
  • 127
Sachins
  • 31
  • 1
  • 7