【Mysql】忘记Root密码后如何不影响数据进行重置密码

方法一:通用方法--启动时跳过权限表

1> 停止数据库

以管理员方式打开cmd!!

C:\Users\Administrator>net stop mysql

MySQL 服务正在停止..

MySQL 服务已成功停止。

2> 启动时跳过权限表

mysqld --console --skip-grant-tables --shared-memory

C:\Users\Administrator>mysqld --console --skip-grant-tables --shared-memory

注意:不要关闭终端

3> 重开新的终端(再开一个终端),登录并设置新密码

PS C:\Users\Administrator> mysql -uroot -p

Enter password: 直接敲回车键

mysql> flush privileges;

mysql> alter user root@localhost identified by '123456'; //重置密码

4> 退出MySQL,关闭第一个终端,正常启动服务。

mysql> \q

PS C:\Users\Administrator> net start mysql

MySQL 服务正在启动 ..

MySQL 服务已经启动成功。

PS C:\Users\Administrator> mysql -uroot -p123456

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 8

Server version: 8.0.36 MySQL Community Server - GPL

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> \q

Bye

方法二:参考官方文档

1> 停止服务

PS C:\Users\Administrator> net stop mysql

MySQL 服务正在停止.

MySQL 服务已成功停止。

2> 创建一个文本文件到mysql文件夹里,保存为 mysql_init.txt ,内容如下:

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

3> 启动同时使用上一步文件修改密码

要求管理员身份打开cmd来运行命令,暂时不要关闭终端:

C:\Users\Administrator>mysqld --init-file= F:\mysql\mysql-8.0.36-winx64\mysql_init.txt

(具体路径复制粘贴)

4> 打开另一个终端,登录测试

PS C:\Users\Administrator> mysql -uroot -p123456

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 9

Server version: 8.0.36 MySQL Community Server - GPL

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> \q

Bye

5> 关闭第一个终端,正常启动服务。

C:\Users\Administrator>net start mysql

MySQL 服务正在启动 ..

MySQL 服务已经启动成功。

C:\Users\Administrator>mysql -uroot -p123456

mysql: [Warning] Using a password on the command line interface can be insecure.

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 8

Server version: 8.0.36 MySQL Community Server - GPL

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> \q

Bye

6> 删除文件 mysql_init.txt

相关推荐
小光学长5 小时前
基于Vue的课程达成度分析系统t84pzgwk(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
前端·数据库·vue.js
摇滚侠5 小时前
全面掌握PostgreSQL关系型数据库,备份和恢复,笔记46和笔记47
java·数据库·笔记·postgresql·1024程序员节
周杰伦fans6 小时前
Navicat - 连接 mysql 、 sqlserver 数据库 步骤与问题解决
数据库·mysql·sqlserver
csdn_aspnet6 小时前
如何在 Ubuntu 24.04/22.04/20.04 上安装 MySQL 8.0
linux·mysql·ubuntu
码以致用7 小时前
StarRocks笔记
数据库·starrocks·olap·1024程序员节
auspicious航7 小时前
PostgreSQL数据库关于pg_rewind的认识
数据库·postgresql·oracle
最好结果7 小时前
MyBatis 精确查询逗号分隔字符串
mysql·mybatis·1024程序员节
苹果醋37 小时前
学习札记-Java8系列-1-Java8新特性简介&为什么要学习Java8
java·运维·spring boot·mysql·nginx
武子康8 小时前
Java-159 MongoDB 副本集容器化 10 分钟速查卡|keyfile + –auth + 幂等 init 附 docker-compose
java·数据库·mongodb·docker·性能优化·nosql·1024程序员节
zz-zjx8 小时前
MySQL 索引深度指南:原理 · 实践 · 运维(适配 MySQL 8.4 LTS)
运维·数据库·mysql