MySql重置root密码 --skip-grant-tables


Posted in MySQL onApril 11, 2022

前言

说起这个事情吧也相对来说比较尴尬,对于一个技术来说忘记密码然后找回密码都是相当简单的一个事情,但是在生产环境中没有保存记录只能是自己的失职,尴尬就尴尬在明明重置成功了却没有生效,弄得好几个工程师在哪里挠头!!!也是经过不断得摸索测试方案最后也是解决了这个问题,下面就简单跟大家分享一下:

项目场景:

这个场景比较简单,因为我们是测试环境嘛,所以也就只有一台MySql数据库,只需要对这个数据库进行密码修改就可以了,而且也不用担心搞坏得问题,再一个最最最最重要得就是它可以随时进行重启,不需要考虑业务情况,当然在生产环境大家一定要考虑时间空档期,不然数据丢失就很麻烦了,而且操作的又是数据库,就相当于在脑袋上开刀一样,废话不多说了下面是环境情况:

操作系统:windows server 2019 数据中心版本

MySql:经典安装 MySql 5.6

MySql重置root密码 --skip-grant-tables

问题描述

问题就是:使用--skip-grant-tables跳过权限,然后使用update修改root密码后,使用 FLUSH PRIVILEGES;刷新,使用新密码连接mysql提示密码错误,无非登录

MySql重置root密码 --skip-grant-tables

下面是我重置密码的过程,大家也可以参考下,看看是不是有忽略的地方

1.停止mysql服务

MySql重置root密码 --skip-grant-tables

2.使用--skip-grant-tables跳过权限启动

MySql重置root密码 --skip-grant-tables

3.登录并修改密码

MySql重置root密码 --skip-grant-tables

MySql重置root密码 --skip-grant-tables

4.关闭mysql进程及命令行窗口,重新启动mysql服务,尝试登陆

MySql重置root密码 --skip-grant-tables

尝试登陆

MySql重置root密码 --skip-grant-tables

明明密码修改成功了,密码也输入成功了,结果却在登陆的时候无发登陆成功

原因分析:

经我们几个人的不断测试,不断尝试,最终发现由于--skip-grant-tables这个参数造成的,其实说白了这个就是启动时生效了但是没有指定mysql的配置文件,所以这个模式下的所有操作都是无效的,设置成功了也不会修改真正的数据库文件的,也就是你把这个进程关掉了,他自己也就把数据还原回之前的了,这个跟mysql的安装方式也有关的,采用mysql免安装版本用以上操作就可以生效,但是按照版本就无法生效的,我已经尝试多个版本都是这样。
也可能不是这个原因,有异议的小伙伴欢迎大家留言一起探讨哦

下面是需要修改的跳过权限启动的命令

mysqld.exe --defaults-file="my.ini路径" --skip-grant-tables

解决方案:

1.正常关闭mysql服务

MySql重置root密码 --skip-grant-tables

2.设置跳过权限启动mysql

(这里是和之前操作不一样的地方)

mysqld.exe --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.6\my.ini" --skip-grant-tables

--defaults-file="C:\ProgramData\MySQL\MySQL Server 5.6\my.ini" //这个直接在服务中找到mysql服务,右键属性就可以看到这个路径了

MySql重置root密码 --skip-grant-tables

前面是mysqld的启动程序位置,后面是指定mysql的配置文件也就是my.ini文件

MySql重置root密码 --skip-grant-tables

启动成功

3. 修改密码

开启新命令行窗口,连接mysql

MySql重置root密码 --skip-grant-tables

连接成功

修改密码

MySql重置root密码 --skip-grant-tables

修改成功,退出登陆,重启mysql服务

MySql重置root密码 --skip-grant-tables

4. 尝试登陆

启动成功,尝试使用新密码进行登陆

MySql重置root密码 --skip-grant-tables

发现已经连接成功。

MySQL 相关文章推荐
mysql 8.0.24 安装配置方法图文教程
May 12 MySQL
MySQL 可扩展设计的基本原则
May 14 MySQL
MySQL 覆盖索引的优点
May 19 MySQL
my.ini优化mysql数据库性能的十个参数(推荐)
May 26 MySQL
你知道哪几种MYSQL的连接查询
Jun 03 MySQL
千万级用户系统SQL调优实战分享
Mar 03 MySQL
MySQL库表太大怎么办? 数据库分库分表项目实践
Apr 11 MySQL
解决MySQL报“too many connections“错误
Apr 19 MySQL
MySQL优化之慢日志查询
Jun 10 MySQL
mysql中关键词exists的用法实例详解
Jun 10 MySQL
MySQL下载安装配置详细教程 附下载资源
Sep 23 MySQL
关于MySQL中explain工具的使用
May 08 MySQL
MySQL库表太大怎么办? 数据库分库分表项目实践
排查MySQL生产环境索引没有效果
Apr 11 #MySQL
排查并解决MySQL生产库内存使用率高的报警
Apr 11 #MySQL
Windows下载并安装MySQL8.0.x 版本的完整教程
MySQL数据库优化之通过索引解决SQL性能问题
Apr 10 #MySQL
MySQL 外连接语法之 OUTER JOIN
Apr 09 #MySQL
MySQL中优化SQL语句的方法(show status、explain分析服务器状态信息)
Apr 09 #MySQL
You might like
世界收音机发展史
2021/03/01 无线电
ip签名探针
2006/10/09 PHP
php源码分析之DZX1.5加密解密函数authcode用法
2015/06/17 PHP
PHP生成静态HTML文档实现代码
2016/06/23 PHP
Mac下php 5升级到php 7的步骤详解
2017/04/26 PHP
IE7提供XMLHttpRequest对象为兼容
2007/03/08 Javascript
JS 用6N±1法求素数 实例教程
2009/10/20 Javascript
用循环或if语句从json中取数据示例
2014/08/18 Javascript
EasyUi中的Combogrid 实现分页和动态搜索远程数据
2016/04/01 Javascript
JavaScript中apply方法的应用技巧小结
2016/09/29 Javascript
Dropzone.js实现文件拖拽上传功能(附源码下载)
2016/11/22 Javascript
原生和jQuery的ajax用法详解
2017/01/23 Javascript
Angular4 中内置指令的基本用法
2017/07/31 Javascript
vue-lazyload图片延迟加载插件的实例讲解
2018/02/09 Javascript
LayUI表格批量删除方法
2018/08/15 Javascript
vue打包使用Nginx代理解决跨域问题
2018/08/27 Javascript
Vue 组件参数校验与非props特性的方法
2019/02/12 Javascript
Python每天必学之bytes字节
2016/01/28 Python
Django验证码的生成与使用示例
2017/05/20 Python
Python实现霍夫圆和椭圆变换代码详解
2018/01/12 Python
在python中利用最小二乘拟合二次抛物线函数的方法
2018/12/29 Python
Python实现FTP弱口令扫描器的方法示例
2019/01/31 Python
深入浅析python3中的unicode和bytes问题
2019/07/03 Python
python 实现一个反向单位矩阵示例
2019/11/29 Python
设置jupyter中DataFrame的显示限制方式
2020/04/12 Python
python 两种方法修改文件的创建时间、修改时间、访问时间
2020/09/26 Python
Python使用paramiko连接远程服务器执行Shell命令的实现
2021/03/04 Python
Envie de Fraise意大利:法国网上推出的孕妇装品牌
2020/10/18 全球购物
sealed修饰符是干什么的
2012/10/23 面试题
教师师德考核自我评价
2014/09/13 职场文书
公务员政审材料范文
2014/12/23 职场文书
航班延误投诉信
2015/07/02 职场文书
简单实现一个手持弹幕功能+文字抖动特效
2021/03/31 HTML / CSS
原生Js 实现的简单无缝滚动轮播图的示例代码
2021/05/10 Javascript
小程序实现筛子抽奖
2021/05/26 Javascript
小程序与后端Java接口交互实现HelloWorld入门
2021/07/09 Java/Android