phpenv中mysql默认账号为root、密码为空;若安装时设过密码则以所设为准,phpmyadmin登录需留空密码或手动更新config.inc.php配置。

phpEnv 中 MySQL 默认账号是 root,密码为空(即不填)或 root,具体取决于你安装时是否手动设过密码。
phpEnv 启动后连不上 MySQL:常见登录失败原因
很多用户在 phpMyAdmin 或命令行执行 mysql -u root -p 时卡住、报错 Access denied,其实不是密码错了,而是没搞清 phpEnv 的默认行为:
- 首次启动 phpEnv 时,MySQL 服务会自动初始化,但多数版本不会强制设置密码,
root用户默认无密码(直接回车即可登录) - 部分新版 phpEnv 安装向导会弹窗让你“设置 MySQL 密码”,若当时输入了(比如
123456),那就得用那个;若跳过或留空,就是空密码 - phpEnv 自带的 phpMyAdmin 首页登录框里,
用户名填root,密码留空 —— 这是最常被忽略的“正确操作” - 如果你改过密码但忘了,不能靠重装解决,因为数据目录(如
F:\phpEnv\MySQL\data)可能残留旧权限表,需手动重置
怎么确认当前 MySQL root 密码?
别猜,直接查或重置。最稳妥的方式是进 phpEnv 自带的 CMD 工具(菜单栏 → 工具 → CMD):
- 先停 MySQL:
phpenv service mysql stop - 再以跳过权限方式启动:
mysqld --skip-grant-tables --shared-memory(注意加--shared-memory,Windows 下必需,否则可能无法连接) - 新开一个 CMD 窗口,运行:
mysql -u root(不加-p) - 进 MySQL 后执行:
USE mysql;→SELECT user, host, authentication_string FROM user WHERE user='root'; - 如果
authentication_string为空,说明密码为空;如果是一串哈希值,且你不确定原始密码,就用ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'newpass';强制重设
为什么改完密码 phpMyAdmin 还登不上?
phpEnv 的 phpMyAdmin 配置文件(通常是 F:\phpEnv\phpmyadmin\config.inc.php)里有硬编码连接参数,它不读你新设的密码,除非你手动改:
- 找到
$cfg['Servers'][$i]['password'] = '';这一行,把单引号里填上你的新密码 - 如果启用了
$cfg['Servers'][$i]['auth_type'] = 'config';(默认),那它就完全依赖这个配置,不会弹登录框 - 改成
'cookie'或'http'才能重新触发登录界面,但会要求每次输密码 - MySQL 8+ 用户特别注意:
default_authentication_plugin=mysql_native_password必须写在my.ini(位于F:\phpEnv\MySQL\my.ini)的[mysqld]段下,否则即使密码对,也会报caching_sha2_password不支持
真正容易被忽略的是:phpEnv 的「MySQL 版本切换」功能会复制整个 data 目录,但不会同步更新 my.ini 里的插件配置 —— 换成 MySQL 8.0 后若没手动补这行,所有连接都会静默失败。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











