You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

phpMyAdmin auth_type 'config'配置失效问题求助

解决Ubuntu 16.04 phpMyAdmin改auth_type为config后异常的问题

嘿,这个问题跟Ubuntu 16.04版本本身关系不大,核心是MySQL的认证插件在搞鬼!我来给你拆解下原因和解决步骤:

核心原因:MySQL root用户的认证方式

Ubuntu 16.04默认安装的MySQL 5.7+版本中,root用户默认使用auth_socket插件认证,而不是传统的密码验证。这种模式下,只有通过本地socket(比如mysql -u root直接登录)才能访问root账号,即使你知道密码,用phpMyAdmin的config模式填密码也没用——因为PHP是通过TCP连接MySQL,不是socket,auth_socket不认这个。

解决步骤

1. 检查root用户的认证插件

先登录MySQL(你已经能通过mysql -u root登录,正好用这个):

mysql -u root

然后执行查询:

SELECT user, plugin FROM mysql.user WHERE user = 'root';

如果结果里plugin列显示auth_socket,那就是这个问题了。

2. 修改root用户的认证方式为密码验证

在MySQL命令行里执行:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的root密码';
FLUSH PRIVILEGES;

把你的root密码换成你实际用的密码,执行完退出MySQL。

3. 确保phpMyAdmin的配置文件正确且安全

打开/etc/phpmyadmin/config.inc.php,确认以下配置项:

$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '你的root密码';

另外,为了安全,要限制这个配置文件的可读性,避免密码泄露:

sudo chmod 640 /etc/phpmyadmin/config.inc.php

4. 重启Apache服务

让配置生效:

sudo systemctl restart apache2

现在再访问phpMyAdmin,应该就能直接用root账号登录了。

内容的提问来源于stack exchange,提问作者Denis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 08:49:44