当前位置: 首页 > news >正文

MySQL root用户密码忘记怎么办(Reset root account password)

在使用MySQL数据库的的过程中,不可避免的会出现忘记密码的现象。普通用户的密码如果忘记,可以用更高权限的用户(例如root)进行重置。但是如果root用户的密码忘记了,由于root用户本身就是最高权限,那这个方法就行不通了。本文介绍2种在忘记root用户用户密码的情况下,如何进行重设。

文章目录
  • 一、使用–init-file参数重设
    • 1.1 停止mysql进程
    • 1.2 创建初始化文件
    • 1.3 使用init-file参数重启数据库
  • 二、使用–skip-grant-tables参数重设
    • 2.1 停止mysqld进程
    • 2.2 使用skip-grant-tables重启数据库
    • 2.3 修改root密码
    • 2.4 重启数据库

一、使用–init-file参数重设

由于忘记了root密码,我们是无法通过root用户连接到数据库的,因此也无法通过客户端执行alter user或set password命令来重置密码。MySQL提供了init-file参数,在启动时可以读取文件,我们将修改root用户密码的SQL放在文件中,通过重启来执行修改密码命令。

假设我想要将root密码修改为’abc123’,先测试一下,密码是不对的:

mysql -uroot -pabc123

在这里插入图片描述

1.1 停止mysql进程

下面演示的是通过kill命令杀死mysqld进程,如果可以正常停止也可以。
首先通过ps -ef | grep mysqld 查询mysql数据库的进程号:

ps -ef | grep mysqld

在这里插入图片描述
这里显示数据库相关的进程有2个(第3个是grep命令),由于我是通过mysqld_safe脚本启动的数据库,因此有一个额外的守护进程:
进程号为23619的mysqld_safe守护进程,负责监控mysqld的状态
进程号为24846的mysqld进程,这个是数据库服务进程(它的父进程号23619)

查询到进程号后,使用kill命令依次将mysqld_safe和mysqld杀死,注意要先杀mysqld_safe,如果先杀mysqld,那么守护进程检测到mysqld进程挂了,会立刻将mysqld重新启动:

kill -9 23619
kill -9 24846

在这里插入图片描述
如果只有一个mysqld进程,那么只要将其杀掉即可。

1.2 创建初始化文件

创建一个文本文件,名称随意(这里是reset_password.sql),里面写上更改root密码的SQL:

alter user 'root'@'localhost' identified by 'abc123';

在这里插入图片描述

文件创建后给mysql用户增加读取权限(通常使用操作系统的mysql用户来启动数据库进程)

chmod a+r reset_password.sql

在这里插入图片描述

1.3 使用init-file参数重启数据库

使用–init-file=/root/reset_password.sql 参数启动数据库,启动时会自动执行文件种的密码修改SQL:

mysqld_safe --init-file=/root/reset_password.sql &
mysql -uroot -pabc123

在这里插入图片描述
可以看到启动后,root用户的密码已经成功被修改为’abc123’,最后将reset_password.sql文件删除即可。

二、使用–skip-grant-tables参数重设

MySQL的skip-grant-tables参数可以指定在启动时忽略权限认证,这意味着任何用户都可以不用密码登陆数据库,并且具有所有权限,这是一个危险的状态。因此当使用skip-grant-tables启动时,MySQL会自动启用skip-networking参数,禁止所有远程连接。

2.1 停止mysqld进程

停止或杀掉mysqld进程,参照上一节内容。

2.2 使用skip-grant-tables重启数据库

使用skip-grant-tables参数启动数据库,并使用root用户登陆:

mysqld_safe --skip-grant-tables &
mysql -uroot -p

在这里插入图片描述
这里提示了Enter password:,但实际是不需要输入密码的,直接回车便可登陆。

2.3 修改root密码

加载权限表并修改root密码,这里将密码修改为abc456:

flush privileges;
alter user 'root'@'localhost' identified by 'abc456';

在这里插入图片描述

2.4 重启数据库

使用正常状态重启数据库

mysqladmin shutdown
mysqld_safe &
mysql -uroot -pabc456

在这里插入图片描述可以看到root用户的密码成功被修改为abc456

以上即是MySQL在忘记root用户密码的两种修改方式,希望对你有帮助。

相关文章:

MySQL root用户密码忘记怎么办(Reset root account password)

在使用MySQL数据库的的过程中,不可避免的会出现忘记密码的现象。普通用户的密码如果忘记,可以用更高权限的用户(例如root)进行重置。但是如果root用户的密码忘记了,由于root用户本身就是最高权限,那这个方法…...

groovy:多线程 简单示例

在Groovy中,多线程编程与Java非常相似,因为Groovy运行在Java虚拟机(JVM)上,并且可以利用Java的所有并发工具。以下是一些在Groovy中实现多线程编程的方法: class MyThread extends Thread {Overridevoid…...

SOME/IP 协议详解——序列化

文章目录 0. 概述1.基本数据序列化2.字符串序列化2.1 字符串通用规则2.2 固定长度字符串规则2.3 动态长度字符串规则 3.结构体序列化4. 带有标识符和可选成员的结构化数据类型5. 数组5.1 固定长度数组5.2 动态长度数组5.3 Enumeration(枚举)5.4 Bitfield…...

三、GIT与Github推送(上传)和克隆(下载)

GIT与Github推送(上传)和克隆(下载) 一、配置好SSH二、在Github创建仓库三、git克隆(下载)文件四、git推送(上传)文件到远程仓库 一、配置好SSH Git与Github上传和下载时需要使用到…...

18.2、网络安全评测技术与攻击

目录 网络安全测评技术与工具网络安全测评质量管理和标准 网络安全测评技术与工具 漏洞扫描技术可以用于测评,测评你安不安全,也可以用来风险评估安不安全,风险大不大 漏洞扫描包含网络安全漏洞扫描、主机安全漏洞扫描,还有数据…...

在 ArcGIS Pro/GeoScene Pro 中设计专题地图的符号系统

原始 按颜色对面进行符号化 打开符号系统 选择主符号系统 选择字段及其计算方式 更改临界值</...

CSS2笔记

一、CSS基础 1.CSS简介 2.CSS的编写位置 2.1 行内样式 2.2 内部样式 2.3 外部样式 3.样式表的优先级 4.CSS语法规范 5.CSS代码风格 二、CSS选择器 1.CSS基本选择器 通配选择器元素选择器类选择器id选择器 1.1 通配选择器 1.2 元素选择器 1.3 类选择器 1.4 ID选择器 1.5 基…...

移动端如何实现上拉加载

一、理解上拉加载的原理 上拉加载是一种在移动端很常见的交互方式&#xff0c;其原理是当用户在页面上向上滑动&#xff08;即滚动条接近底部&#xff09;时&#xff0c;触发一个加载更多数据的操作。这通常涉及到对滚动事件的监听以及判断滚动位置是否达到了触发加载的阈值。…...

【mysql】linux安装mysql客户端

参考文章&#xff1a; MySQL系列之如何在Linux只安装客户端 linux下安装mysql客户端client MySQL Community Downloads 查看linux版本方法&#xff1a; lsb_release -a cat /proc/version下载文件&#xff1a; rpm -ivh mysql-community-*可以删除错误的包&#xff1a; RP…...

YOLOv5部署到web端(flask+js简单易懂)

文章目录 前言最终实现效果图后端实现 主界面检测函数检测结果显示 前端实现 主界面(index.html&#xff09;显示图片界面 总结 前言 最近&#xff0c;老板让写一个程序把yolov5检测模型部署到web端&#xff0c;在网页直接进行目标检测。经过1个星期的努力&#xff0c;终于实…...

【机器学习】深度学习(DNN)

文章目录 1. 神经网络结构2. 训练步骤3. 反向传播4. 为什么深&#xff0c;而不是宽&#xff08;模块化&#xff09;5. 初始化参数能否全为0&#xff1f; 1. 神经网络结构 输入层隐藏层&#xff1a;用于特征转换输出层&#xff1a;用于分类技巧&#xff1a;将网络中的参数写成矩…...

12.30-1-5学习周报

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 文章链接摘要Abstract一、方法介绍1.HAT-CIR2.Horde3.DWGRNet 二、实验总结 文章链接 https://arxiv.org/pdf/2405.04101 摘要 本博客介绍了论文《Continual lea…...

【MySQL】数据操作

数据操作 一、INSERT1、介绍2、语法3、语法介绍4、注意事项5、示例 二、插入否则更新1、介绍2、语法3、语法介绍4、示例 三、ROW_COUNT1、介绍2、示例 四、REPLACE1、介绍2、语法3、示例 五、UPDATE1、介绍2、语法3、示例 六、DELETE1、介绍2、语法3、语法介绍 七、TRUNCATE1、…...

python数据分析:使用pandas库读取和编辑Excel表

使用 Pandas&#xff0c;我们可以轻松地读取和写入Excel 文件&#xff0c;之前文章我们介绍了其他多种方法。 使用前确保已经安装pandas和 openpyxl库&#xff08;默认使用该库处理Excel文件&#xff09;。没有安装的可以使用pip命令安装&#xff1a; pip install pandas ope…...

开源轻量级文件分享服务Go File本地Docker部署与远程访问

???欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老…...

异步背后的奥秘:事件循环

异步背后的奥秘&#xff1a;事件循环 复习环节 JavaScript运行时 我们都知道&#xff0c;JavaScript本身是一个单线程的&#xff0c;那JavaScript是如何处理同时发生的多个任务的呢&#xff1f; 首先JavaScript引擎运行在一个容器中&#xff0c;这个容器可能是浏览器或者nod…...

Springboot使用RabbitMQ实现关闭超时订单的一个简单示例

1.maven中引入rabbitmq的依赖&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId></dependency> 2.application.yml中进行rabbitmq相关配置&#xff1a; # rabbit…...

小程序基础 —— 07 创建小程序项目

创建小程序项目 打开微信开发者工具&#xff0c;左侧选择小程序&#xff0c;点击 号即可新建项目&#xff1a; 在弹出的新页面&#xff0c;填写项目信息&#xff08;后端服务选择不使用云服务&#xff0c;开发模式为小程序&#xff0c;模板选择为不使用模板&#xff09;&…...

【Golang 面试题】每日 3 题(十五)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/UWz06 &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏…...

Docker命令(用法说明详解)

一、常见Docker容器命令 #根据image创建一个新容器并运行&#xff08;即使该image已经存在容器&#xff0c;也会再创建一个新容器&#xff09; docker run IMAGE_NAME #根据image创建一个新容器并运行。 #选项-d&#xff1a;指定容器为后台运行&#xff0c;--name自定义该容器…...

01_第一篇:到底什么是嵌入式芯片?与通用CPU_GPU_DSP的核心区别

嵌入式芯片入门&#xff1a;到底什么是嵌入式芯片&#xff1f;与通用CPU/GPU/DSP的核心区别 引言&#xff1a;智能时代的核心基石&#xff0c;嵌入式芯片的无处不在 在万物互联的智能时代&#xff0c;我们的生活早已被无数“隐形大脑”环绕&#xff1a;清晨唤醒你的智能手环、出…...

Geoserver空间查询全解析:从基础bbox到高级CQL_FILTER的完整指南

Geoserver空间查询全解析&#xff1a;从基础bbox到高级CQL_FILTER的完整指南 当你面对海量地理空间数据时&#xff0c;如何快速准确地提取所需信息&#xff1f;Geoserver作为开源地理信息系统&#xff08;GIS&#xff09;的中枢神经&#xff0c;其强大的空间查询能力往往被开发…...

论文阅读 AIED 2024 Coding with AI: How Are Tools Like ChatGPT Being Used by Students in Foundational Pro

总目录 大模型相关研究&#xff1a;https://blog.csdn.net/WhiffeYF/article/details/142132328 Coding with AI: How Are Tools Like ChatGPT Being Used by Students in Foundational Programming Courses https://link.springer.com/chapter/10.1007/978-3-031-64299-9_20…...

基于Python的多媒体信息共享平台毕业设计源码

博主介绍&#xff1a;✌ 专注于Java,python,✌关注✌私信我✌具体的问题&#xff0c;我会尽力帮助你。一、研究目的本研究旨在设计并实现一个基于Python的多媒体信息共享平台&#xff0c;以满足现代网络环境下多媒体信息传播的需求。具体研究目的如下&#xff1a;构建一个高效、…...

网站 SEO 标题要包含关键词吗

网站 SEO 标题要包含关键词吗&#xff1f;探讨最佳实践和SEO优化策略 在当今互联网时代&#xff0c;网站的SEO优化已经成为提升网站流量和用户体验的重要手段。其中&#xff0c;网站标题的优化也至关重要。网站 SEO 标题要包含关键词吗&#xff1f;这个问题备受争议&#xff0c…...

如何用Bypass Paywalls Clean突破付费墙限制?技术解析与实战指南

如何用Bypass Paywalls Clean突破付费墙限制&#xff1f;技术解析与实战指南 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在数字内容付费墙日益严密的今天&#xff0c;Bypass Payw…...

3个实战场景×5个核心技巧:Umi-OCR本地化部署与效率提升完全指南

3个实战场景5个核心技巧&#xff1a;Umi-OCR本地化部署与效率提升完全指南 【免费下载链接】Umi-OCR OCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片&#xff0c;PDF文档识别&#xff0c;排除水印/页眉页脚&#xff0c;扫描/生成二维码。内置…...

酒精测试仪

简 介&#xff1a; 本文介绍了一款酒精测试仪的使用方法。测试仪开机后需等待15秒预热&#xff08;数字倒计时&#xff09;&#xff0c;预热结束后对着吹气口吹气3秒即可显示测量结果。实验表明&#xff0c;该仪器灵敏度较高&#xff1a;直接吹气显示11左右&#xff0c;不吹气显…...

Qt5.14.2与VS2019整合开发避坑指南(从安装到第一个GUI项目)

Qt5.14.2与VS2019整合开发避坑指南&#xff08;从安装到第一个GUI项目&#xff09; 在Windows平台进行Qt开发时&#xff0c;Visual Studio作为强大的IDE环境&#xff0c;与Qt框架的结合能够显著提升开发效率。本文将深入剖析Qt5.14.2与VS2019整合过程中的关键环节&#xff0c;从…...

卡尔曼滤波调参实战:如何用MATLAB让MPU6050的加速度数据更‘听话’?

卡尔曼滤波调参实战&#xff1a;如何用MATLAB让MPU6050的加速度数据更‘听话’&#xff1f; 当你在MATLAB中第一次看到MPU6050的原始加速度数据时&#xff0c;那些疯狂跳动的曲线可能会让你怀疑人生。别担心&#xff0c;这不是传感器坏了&#xff0c;而是现实世界本就充满噪声…...