登录
首页 >  文章 >  php教程

phpEnv忘记MySQL root密码怎么办 phpEnv免密登录修改教程

时间:2026-05-03 16:30:54 339浏览 收藏

学习知识要善于思考,思考,再思考!今天golang学习网小编就给大家带来《phpEnv忘记MySQL root密码怎么办 phpEnv免密登录修改教程》,以下内容主要包含等知识点,如果你正在学习或准备学习文章,就都不要错过本文啦~让我们一起来看看吧,能帮助到你就更好了!

能直接重置密码,无需删库或重装,但必须停服务并区分MySQL 5.7与8.0+语法:5.7用UPDATE user SET authentication_string=PASSWORD('新密码'),8.0+须用ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码',且必须执行FLUSH PRIVILEGES。

phpEnv忘记MySQL root密码怎么办 phpEnv免密登录修改教程

能直接重置,不用删库、不用重装,但必须停服务 + 分清 MySQL 版本(5.7 和 8.0+ 语句不兼容)

停掉 phpEnv 中的 MySQL 服务

不关服务就无法绕过权限验证,后续所有操作都会被拦截。

  • 打开 phpEnv 主界面,找到「数据库」模块,点击 MySQL 右侧的「停止」按钮
  • 如果状态卡在“停止中”或点不动,打开任务管理器,结束所有 mysqld.exe 进程
  • 确认无残留:在命令行执行 netstat -ano | findstr :3306,没输出才表示端口已释放

用 --skip-grant-tables 启动 MySQL(跳过权限校验)

这是免密登录的前提。注意路径和参数写法,错一个字符就会启动失败。

  • 进入 phpEnv 安装目录下的 MySQL bin 子目录,例如:D:\phpEnv\Extensions\MySQL8.0.33\bin
  • 按住 Shift + 右键 → 选择「在此处打开 Powershell 窗口(管理员)」
  • 执行命令:mysqld --skip-grant-tables --shared-memory
  • 窗口会卡住不动 —— 这是正常现象,保持它开着,别关

连接并修改 root 密码(关键:按版本选 SQL)

另开一个 Powershell 窗口(同样进到 bin 目录),执行以下步骤:

  • 运行 mysql -u root(不加 -p,也不输密码,直接回车)
  • 输入 USE mysql; 切换到系统库
  • 根据你的 MySQL 版本执行对应语句:
    – 如果是 MySQL 5.7.xUPDATE user SET authentication_string=PASSWORD('新密码') WHERE User='root' AND Host='localhost';
    – 如果是 MySQL 8.0+(绝大多数 phpEnv 新版默认):ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
  • 必须执行:FLUSH PRIVILEGES;,否则密码不会生效
  • 输入 EXIT; 退出

关闭临时模式并重启服务

很多人卡在这步:以为改完就能直接连,其实跳过权限的进程还在占着端口。

  • 回到第一个 Powershell 窗口(运行着 mysqld --skip-grant-tables 的那个),按 Ctrl + C 终止
  • 返回 phpEnv 主界面,点击 MySQL 「启动」按钮
  • 等状态变成「正在运行」后,测试连接:mysql -u root -p,输入你刚设的新密码
  • 如果报错 ERROR 1045 (28000),说明 FLUSH PRIVILEGES; 没执行,或版本语句写错了

最易忽略的是 MySQL 版本判断 —— phpEnv 8.0+ 默认用 ALTER USER,硬套 5.7 的 UPDATE 会静默失败;另外 --shared-memory 参数在某些 Windows 环境下必须带上,否则 mysqld 启动后立刻退出。

到这里,我们也就讲完了《phpEnv忘记MySQL root密码怎么办 phpEnv免密登录修改教程》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于phpenv的知识点!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>