phpmyadmin 4.9 无法直接重置用户密码,仅root等具备mysql.user表update权限的账号可在“用户账户”页看到编辑入口;普通账号须用sql执行alter user语句修改,且需匹配host和认证插件,并同步更新config.inc.php中的密码配置。
phpmyadmin 4.9 不能直接“重置”用户密码,它只允许有足够权限的账号(如 root)通过界面编辑已有用户的密码字段;普通账号必须用 sql 手动执行 alter user 或 set password,且需注意 mysql 版本与认证插件兼容性。
为什么点“用户账户”看不到编辑按钮?
phpMyAdmin 4.9 默认隐藏或禁用无权操作的入口。只有当前登录账号拥有 mysql.user 表的 UPDATE 权限(通常是 root 或带 GRANT OPTION 的账号),才能在“用户账户”页看到“编辑权限”链接。如果你是应用账号(如 app_user),即使能进该页面,右侧也不会出现可点击的编辑图标。
- 检查你是否以
root登录:如果不是,界面不会显示密码修改入口 - 确认 phpMyAdmin 配置未屏蔽系统库:
$cfg['Servers'][$i]['hide_db'] = 'mysql';会隐藏用户管理功能 - 某些托管环境(如 cPanel、Shared Hosting)会主动禁用“用户账户”标签页
用 SQL 栏改自己密码最可靠(推荐)
无论权限高低,只要能执行 SQL,就可以安全修改当前账号密码。phpMyAdmin 4.9 的 SQL 标签页完全支持标准语句,且不会受界面权限限制干扰。
- 改当前登录账号(通用,推荐):
ALTER USER USER() IDENTIFIED BY '新密码'; - 明确指定用户(适合复制复用):
ALTER USER 'myuser'@'localhost' IDENTIFIED BY '新密码'; - 若报错
Unknown authentication plugin: caching_sha2_password,加插件声明:ALTER USER 'myuser'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'; - 执行后务必点右上角“刷新”按钮——否则 phpMyAdmin 缓存仍用旧凭据尝试连接
改完密码却登不上?多半是配置文件没同步
phpMyAdmin 4.9 默认使用“config”认证模式时,会从 config.inc.php 读取数据库登录凭据。你改了 MySQL 用户密码,但没更新这个文件,它下次仍用旧密码去连,自然报 #1045 Access denied。
- 找到
config.inc.php(通常在 phpMyAdmin 安装根目录下) - 搜索
$cfg['Servers'][$i]['password'],把等号右边单引号内的值换成新密码 - 如果用了多服务器配置,
$i可能是 0、1 等数字,需逐个检查 - 改完保存,无需重启 Apache/Nginx,但浏览器要硬刷新(Ctrl+F5)或清空会话缓存
最容易被忽略的是 host 匹配和认证插件——MySQL 用户是 'user'@'host' 二元组,'myuser'@'127.0.0.1' 和 'myuser'@'localhost' 是两个不同用户;而 caching_sha2_password 在 PHP 7.4 以下或旧版 mysqli 扩展中可能不被识别,导致连接失败。动手前先查清楚目标用户的 Host 值和 plugin 字段。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











