phpMyAdmin错误:mysqli_real_connect():( HY000/1045):用户'pma'@'localhost'拒绝访问(使用密码:NO)

E.M*_*.A. 19 xampp mysqli phpmyadmin

请不要将其标记为重复我无法在任何地方找到答案我不知道还能做什么.

我通过XAMPP与mysql连接一直出现以下错误,我不知道该怎么做:

在此输入图像描述

这是config.inc.php中的代码

<?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
 */

?>
Run Code Online (Sandbox Code Playgroud)

我已经从命令行重置了MySql的密码两次,并将更改添加到上面的代码和php.ini文件,但每次都会返回错误.有帮助吗?

小智 23

你需要在mysql中创建用户"pma"或更改这一行(mysql的用户apassword):

/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma'; 
$cfg['Servers'][$i]['controlpass'] = '';
Run Code Online (Sandbox Code Playgroud)


Was*_*han 20

在终端中,以 root 身份登录 MySQL。您可能在第一次安装 MySQL 时创建了 root 密码,或者密码可能为空,在这种情况下,您可以在提示输入密码时按 ENTER。

 sudo mysql -p -u root
Run Code Online (Sandbox Code Playgroud)

现在使用您选择的用户名添加一个新的 MySQL 用户。在这个例子中,我们称它为 pmauser(对于 phpmyadmin 用户)。确保将 password_here 替换为您自己的。您可以在此处生成密码。这里的 % 符号告诉 MySQL 允许该用户从任何地方远程登录。如果您想要更高的安全性,您可以将其替换为 IP 地址。

CREATE USER 'pmauser'@'%' IDENTIFIED BY 'password_here';
Run Code Online (Sandbox Code Playgroud)

现在我们将授予我们的新用户超级用户权限。

GRANT ALL PRIVILEGES ON *.* TO 'pmauser'@'%' WITH GRANT OPTION;
Run Code Online (Sandbox Code Playgroud)

然后转到 config.inc.php (在 ubuntu 中, /etc/phpmyadmin/config.inc.php )

/* 高级功能的用户 */

$cfg['Servers'][$i]['controluser'] = 'pmauser'; 
$cfg['Servers'][$i]['controlpass'] = 'password_here';
Run Code Online (Sandbox Code Playgroud)

  • `错误 1410 (42000): 不允许您使用 GRANT 创建用户` (2认同)

小智 14

将这些行添加到文件中xampp\phpMyAdmin\config.inc

$cfg['Servers'][$i]['controluser'] = 'root'; 
$cfg['Servers'][$i]['controlpass'] = '';
Run Code Online (Sandbox Code Playgroud)


A. *_*rov 10

我的默认 3306 端口正在使用中,所以我将其更改为 8111,然后出现此错误。我已经通过添加修复它

$cfg['Servers'][$i]['port'] = '8111';
Run Code Online (Sandbox Code Playgroud)

进入 config.inc.php 。如果您使用不同的端口号,请设置您的端口号。


小智 9

将此行添加到文件中xampp\phpMyAdmin\config.inc:

$cfg['Servers'][$i]['port'] = '3307';
Run Code Online (Sandbox Code Playgroud)

在这里,我的端口是3307,您可以将其更改为您的.


Gen*_*r ツ 6

我通过将以下行添加skip-grant-tablesmy.ini解决了该问题:

# The MySQL server
[mysqld]
skip-grant-tables
port= 3306
...
Run Code Online (Sandbox Code Playgroud)

在 XAMPP 控制面板> “MySQL”部分>配置> my.ini下


Use*_*ebo 5

Linux / Ubuntu:如果通过 apt 安装了 phpmyadmin: sudo apt-get install phpmyadmin php-mbstring

可以检查/etc/phpmyadmin/config-db.php更改用户凭据。

$dbuser='pma';
$dbpass='my_pass';
$basepath='';
$dbname='phpmyadmin';
$dbserver='localhost';
$dbport='3306';
$dbtype='mysql';
Run Code Online (Sandbox Code Playgroud)