MySQL root密码忘了的超详细重置步骤教程

 更新时间:2025年11月01日 08:34:17   作者:·云扬·  
在使用MySQL数据库的的过程中,不可避免的会出现忘记密码的现象,这篇文章主要介绍了MySQL root密码忘了超详细重置步骤的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

问题描述

在使用 MySQL 数据库时,若不慎忘记 root 账户的登录密码,会导致无法正常登录数据库,影响后续操作。本文将详细介绍如何通过修改配置、重置密码等步骤,解决 MySQL root 密码遗忘的问题。

问题解决

  1. 修改配置文件,添加跳过权限验证的参数

首先需要修改 MySQL 的配置文件,临时跳过权限验证,以便无密码登录数据库。

  • 使用 vim 编辑器打开 MySQL 配置文件:
vim /data/mysql/conf/my.cnf 
  • 在配置文件的[mysqld]模块下添加以下参数(用于跳过权限验证):
skip-grant-tables

  1. 重启 MySQL 服务,使配置生效

添加参数后,需重启 MySQL 服务,让新配置生效:

/etc/init.d/mysql.server restart
  1. 以免密码方式登录 MySQL

配置生效后,可直接无密码登录 root 账户:

mysql -uroot -p

执行上述命令后,系统会提示输入密码,此时直接按回车(无需输入密码)即可登录。

  1. 清空 root 账户原密码(解决直接改密报错问题)

登录后若直接使用ALTER USER命令修改密码,会因权限验证被跳过而报错。因此需先通过修改用户表,将 root 密码设为空:

update mysql.user set authentication_string = '' where user = 'root' and host='localhost';
  1. 移除跳过权限验证的参数,重启服务

完成密码清空后,需恢复 MySQL 的权限验证机制:

  • 重新打开配置文件,删除之前添加的skip-grant-tables参数:
vim /data/mysql/conf/my.cnf 

(在 vim 编辑模式下,定位到该参数行,按dd删除)

  • 再次重启 MySQL 服务,使配置恢复:
/etc/init.d/mysql.server restart
  1. 使用空密码登录,重新设置 root 密码

此时 MySQL 已恢复权限验证,可使用空密码登录 root 账户:

mysql -uroot -p

(输入密码时直接按回车,因步骤 4 已将密码设为空)

登录后,通过ALTER USER命令设置新密码(以dup81Gcda2为例):

alter user user() identified by 'dup81Gcda2';
  1. 验证新密码是否生效

使用新密码重新登录 MySQL,确认密码修改成功:

mysql -uroot -p

输入刚设置的新密码dup81Gcda2,若能正常登录,则说明问题已解决。

通过以上步骤,即可成功重置 MySQL root 账户的密码,恢复数据库的正常登录。

总结

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

相关文章

  • RedHat6.5/CentOS6.5安装Mysql5.7.20的教程详解

    RedHat6.5/CentOS6.5安装Mysql5.7.20的教程详解

    这篇文章主要介绍了RedHat6.5/CentOS6.5安装Mysql5.7.20的教程详解,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-11-11
  • mysql 数据插入优化方法

    mysql 数据插入优化方法

    当一个线程对一个表执行一个DELAYED语句时,如果不存在这样的处理程序,一个处理器线程被创建以处理对于该表的所有DELAYED语句。
    2010-12-12
  • mysql表空间结构和日志的用途详解

    mysql表空间结构和日志的用途详解

    这篇文章主要介绍了mysql表空间结构和日志的用途,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-06-06
  • Navicat连接虚拟机mysql常见错误问题及解决方法

    Navicat连接虚拟机mysql常见错误问题及解决方法

    这篇文章主要介绍了Navicat连接虚拟机mysql常见错误问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • mysql 复制原理与实践应用详解

    mysql 复制原理与实践应用详解

    这篇文章主要介绍了mysql 复制原理与实践应用,结合实例形式详细分析了MySQL数据库复制功能的原理、操作技巧与相关注意事项,需要的朋友可以参考下
    2020-02-02
  • MySQL添加外键时报错:1215 Cannot add the foreign key constraint的解决方法

    MySQL添加外键时报错:1215 Cannot add the foreign key constraint的解决方法

    大家都知道MySQL中经常会需要创建父子表之间的约束,这个约束是需要建立在主外键基础之上的,最近在MySQL添加外键时发现了一个报错:1215 Cannot add the foreign key constraint,所以这篇文章就给大家介绍了如何解决在创建主外键约束过程中碰到的这个问题。
    2016-11-11
  • MySQL中延迟复制的实现

    MySQL中延迟复制的实现

    MySQL延迟复制允许副本服务器滞后源服务器指定时间,用于数据保护、历史检查等,延迟复制通过设置MASTER_DELAY选项实现,下面就来介绍 一下,感兴趣的可以了解一下
    2025-02-02
  • 教你如何在Mac上安装mysql数据库

    教你如何在Mac上安装mysql数据库

    本文给大家详细介绍了如何在Mac上安装mysql数据库的方法,非常的细致,有需要的小伙伴可以参考下
    2018-05-05
  • Flume如何自定义Sink数据至MySQL

    Flume如何自定义Sink数据至MySQL

    Flume是分布式日志收集系统,通过自定义Sink,可实现将事件数据写入MySQL,自定义Sink需继承AbstractSink类和实现Configurable接口,通过process方法处理Channel数据,适用于特定数据存储需求
    2024-10-10
  • MySQL批量去掉某个字段中的空格

    MySQL批量去掉某个字段中的空格

    这篇文章主要介绍了MySQL批量去掉某个字段中的空格的简单方法,具有一定参考价值,给大家分享下,一起参考,交流。
    2017-10-10

最新评论