可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
I am unable to connect to my MySQL in xampp I have this error:
MySQL said: Documentation
1045 - Access denied for user 'root'@'localhost' (using password: NO)
mysqli_real_connect(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: NO)
phpMyAdmin tried to connect to the MySQL server, and the server rejected the connection. You should check the host, username and password in your configuration and make sure that they correspond to the information given by the administrator of the MySQL server.
CONFIG.INC.PHP file
<?php
/*
* This is needed for cookie based authentication to encrypt password in
* cookie
*/
$cfg['blowfish_secret'] = 'xampp'; /* YOU SHOULD CHANGE THIS FOR A MORE SECURE COOKIE AUTH! */
/*
* Servers configuration
*/
$i = 0;
/*
* First server
*/
$i++;
/* Authentication type and info */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
$cfg['Lang'] = '';
/* Bind to the localhost ipv4 address and tcp */
$cfg['Servers'][$i]['host'] = '127.0.0.1';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = '';
/* Advanced phpMyAdmin features */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
$cfg['Servers'][$i]['history'] = 'pma__history';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['recent'] = 'pma__recent';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';
/*
* End of servers configuration
*/
?>
回答1:
found a solution, in my config file I just changed
$cfg['Servers'][$i]['auth_type'] = 'config';
to
$cfg['Servers'][$i]['auth_type'] = 'HTTP';
回答2:
/* Authentication type and info */
$cfg['Servers'][$i]['password'] = '';<----your password
or
/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = '';
to
/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'your user';
$cfg['Servers'][$i]['controlpass'] = 'your password';
回答3:
@guzuer
Change the value of
$cfg['Servers'][$i]['user'] = 'groot';
$cfg['Servers'][$i]['password']='groot';
in your ~/xampp/phpMyAdmin/config.inc.php
Here my username is groot and password is groot.
At the time of writing this answer, I had this issue and i fixed it by looking up your question.
回答4:
You may had set different passwords for user 'root' or have been changed your password. I had same error as :
mysqli_real_connect(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: YES)
and I found that my root password for phpmyAdmin is not same on both 'mysql' and 'phpmyadmin' databases, so I updated my password for 'phpmyadmin' database same as 'mysql' database as follow:
sudo gedit /etc/phpmyadmin/config-db.php
and update the fields
$dbuser='root';
$dbpass='myNewPassword'; <-- update your new password here
Best wishes!
回答5:
You need to modify the config-db.php
and set your password to the password you gave to the user root
, or else if he has no password leave as this ''
.
回答6:
Follow these steps-
1.go to config.inc.php file and find -
$cfg['Servers'][$i]['auth_type']
2.change the value of $cfg['Servers'][$i]['auth_type'] to 'cookie' or 'http'.
3.find $cfg['Servers'][$i]['AllowNoPassword'] and change it's value to true.
Now whenever you want to login, enter root as your username,skip the password and go ahead pressing the submit button..
Note- if you choose authentication type as cookie then whenever you will close the browser and reopen it ,again you have to login.
回答7:
This is the Different Solution, Check if your Services are running correctly, if WAMP icon showing orange color, and 2 out of 3 services are running it's showing, then this solution will work .
Root cause:
If in your system mysql was there, later you installed WAMP then again one MYSQL will install as WAMP package, default port for MYSQL is 3306 , So in both mysql the port will be 3306, which is a port conflict, So just change the port it will work fine. Steps to change the Port.
- Right click the WAMP icon.
- Chose Tool
- Change the port in Port used by MySql Section
回答8:
$cfg['Servers'][$i]['auth_type'] = 'HTTP';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '1234';
This solves my problem too. It just logs in automatically.
回答9:
Edit the file xampp/mysql/bin/my.ini
Add
skip-grant-tables
under [mysqld]
回答10:
Just do what the message is asking for, create the user pma@localhost in the phpMyAdmin panel with no password
回答11:
In case none of the aforementioned solutions works for you, then simply do the under changes.
Change this
$cfg['Servers'][$i]['host'] = '127.0.0.1';
to
$cfg['Servers'][$i]['host'] = 'localhost';
and
$cfg['Servers'][$i]['auth_type'] = 'config';
to
$cfg['Servers'][$I]['auth_type'] ='cookies';
It works in my situation, possibly works on your situation also.
回答12:
Go got XAMPP->mysql->bin->my.ini
open the file with an editor and add 'skip-grant-tables' after mysql.