一次MySql重置root密码无效的实战记录

 更新时间:2022年04月11日 11:40:45   作者:避凉闲庭  
最近碰见过几次mysql root密码修改无效的情况,在此做一下总,下面这篇文章主要给大家介绍了一次MySql重置root密码无效的实战记录,文中通过示例代码介绍的非常详细,需要的朋友可以参考下

前言

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

项目场景:

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

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

MySql:经典安装 MySql 5.6

问题描述

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

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

1.停止mysql服务

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

3.登录并修改密码

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

尝试登陆

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

原因分析:

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

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

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

解决方案:

1.正常关闭mysql服务

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服务,右键属性就可以看到这个路径了

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

启动成功

3. 修改密码

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

连接成功

修改密码

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

4. 尝试登陆

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

发现已经连接成功

总结

到此这篇关于一次MySql重置root密码无效的文章就介绍到这了,更多相关MySql重置root密码无效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 解决Access denied for user root @ 192.168.120.1 (using password: YES)的问题

    解决Access denied for user root @&nbs

    这篇文章给大家介绍了解决:Access denied for user ‘root‘@‘192.168.120.1‘ (using password: YES)的问题,文中通过图文和代码给大家分析的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2024-01-01
  • mysql备份脚本以及删除前5天的备份文件

    mysql备份脚本以及删除前5天的备份文件

    mysql备份脚本在网上有很多的,在本文将为大家详细介绍下如何删除前5天的备份文件,感兴趣的朋友不要错过
    2013-10-10
  • MySQL数据库的触发器和事务

    MySQL数据库的触发器和事务

    这篇文章主要介绍了MySQL数据库的触发器和事务,触发器是SQL server提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,是由事件来触发
    2022-08-08
  • Mysql表的操作方法详细介绍

    Mysql表的操作方法详细介绍

    这篇文章主要为大家详细介绍了MySQL数据库中表常用的一些操作方法,文中的示例代码讲解详细, 对我们学习MySQL有一定帮助,需要的可以参考一下
    2022-09-09
  • GDB调试Mysql实战之源码编译安装

    GDB调试Mysql实战之源码编译安装

    今天小编就为大家分享一篇关于GDB调试Mysql实战之源码编译安装,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • MySQL中如何增加字段SQL语句

    MySQL中如何增加字段SQL语句

    这篇文章主要介绍了MySQL中如何增加字段SQL语句问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • Mysql5.7如何修改root密码

    Mysql5.7如何修改root密码

    mysql修改管理员root的密码是个很常见的问题了,网上也有很多的教程,然而新版的MYSQL5.7却能使用之前的教程,小编经过一番摸索,才找到了修改办法,这里分享给大家。
    2016-01-01
  • MySQL的几种安装方式及配置问题小结

    MySQL的几种安装方式及配置问题小结

    这篇文章主要介绍了MySQL的几种安装方式及配置,然后在文章底部给大家介绍了安装过程中的问题总结,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-07-07
  • MySQL中一条查询SQL语句的完整执行流程

    MySQL中一条查询SQL语句的完整执行流程

    通常我们在使用MySQL时,我们看到的只是输入一条语句,返回一个结果,却不知道这条语句在MySQL内部的执行过程,这篇文章主要给大家介绍了关于MySQL中一条查询SQL语句的完整执行流程,需要的朋友可以参考下
    2024-05-05
  • mysql字段为NULL索引是否会失效实例详解

    mysql字段为NULL索引是否会失效实例详解

    有很多人对null值是否走索引感觉很疑惑,所以下面这篇文章主要给大家介绍了关于mysql字段为NULL索引是否会失效的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-05-05

最新评论