Windows下本机Mysql8.0版本忘记root密码解决方案

Mysql版本

8.0.26

解决方法

首先自己需要知道本机mysql服务名称,如不知道则下方停止与启动数据库时可进入Windows的服务中找到Mysql服务手动启动与停止

停止mysql服务,以管理员运行终端(Windows PowerShell)执行一下命令

powershell 复制代码
net stop mysql80

不带日志输出的免密启动mysql方式

powershell 复制代码
// 注意修改datadir后的安装路径
mysqld.exe  --skip-grant-tables --shared-memory --datadir="C:\ProgramData\MySQL\MySQL Server 8.0\Data"

此时上方命令执行并未退出即正常

重新打开一个以管理员运行终端执行无密码进入mysql

powershell 复制代码
mysql -u root

成功进入后使用命令进入mysql库

powershell 复制代码
use mysql

自8.0之后,MySQL的用户密码验证机制由"mysql_native_password"改为了"caching_sha2_password",因此直接修改密码可能导致不成功。

此时就需要先将密码制空后再进行密码修改操作

powershell 复制代码
update user set authentication_string = '' where user = 'root'

制空密码之后,在当前MySQL数据库中使用"quit"命令退出数据库,再关闭终端窗口,依次关闭其他终端窗口,再次重新启动MySQL服务后,即可正常无密码登录数据库

powershell 复制代码
// 重启mysql服务
net start mysql80

无密码进入mysql数据库切换到mysql库中

powershell 复制代码
use mysql

修改user表即可完成所有更改密码的过程

powershell 复制代码
alter user 'root'@'localhost' identified by '新密码'
相关推荐
暖和_白开水8 小时前
数据分析agent(十三_3):docker mysql容器镜像服务的异常错误
mysql·docker·容器
ttwuai10 小时前
AI 生成后台改数据后,操作日志别只记按钮:Go + MySQL 怎么验
数据库·人工智能·mysql·golang
韩楚风12 小时前
【参天引擎】一次宕机后的数据恢复,让我把 Cantian 持久化与恢复的六大机制全搞明白了
服务器·网络·数据库·分布式·mysql·架构·cantian
Mico1812 小时前
MySQL 8.0.35 mydumper/myloader 备份恢复工具使用
mysql
这个DBA有点耶17 小时前
热点行更新:秒杀场景下一条UPDATE语句的锁等待与性能优化
数据库·sql·mysql·性能优化·database·dba
冰暮流星18 小时前
mysql之新建表及对表的查询
android·数据库·mysql
Bug收容所19 小时前
12305项目学习day5
java·spring boot·redis·mysql·spring·rocketmq
会编程的土豆19 小时前
功能详解 01 · 用户注册:从表单到数据库一行
开发语言·数据库·后端·mysql·golang
溜达的大象19 小时前
Prometheus怎么监控MySQL?mysqld_exporter部署与告警教程
mysql·adb·prometheus
shencz200019 小时前
mysql8.0社区版,在windows10里的CLI界面导入sql数据库文件报错
mysql