Mysql 忘记密码怎么重置密码(详细步骤)
每种方法都有其适用的情况,根据具体情况选择合适的方法。无论选择哪种方法,请务必在重置密码后及时删除临时用户并重新启动 MySQL
服务。
一、使用 mysqladmin
重置密码
-
停止服务
# systemctl 启动的使用这个停止 $ sudo systemctl stop mysql# mac 本机,可以使用这个或可视化界面停止 $ sudo mysql.server stop
-
使用
mysqld_safe
命令启动MySQL
服务,跳过权限检查,执行后可能需要回车下$ sudo mysqld_safe --skip-grant-tables &
-
登录
MySQL
服务,并使用mysqladmin
命令重置密码# 无需密码,会直接登入 $ mysql -u root # 刷新权限 mysql> FLUSH PRIVILEGES; # 这里的 'new_password' 是要设置的新密码,可以根据需要进行修改。此命令将修改 root 用户在本地 MySQL 服务上的密码。 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';# 修改好后退出 MySQL mysql> exit
-
停止
MySQL
服务,并重新启动密码登入即可# 1、停止 MySQL 服务上面有,第一条就是# 2、重启启动 MySQL 服务,并使用密码登入 # systemctl 启动的使用这个重新启动 $ sudo systemctl start mysql # mac 本机,可以使用这个或可视化界面启动 $ sudo mysql.server start# 3、密码登录 $ mysql -u root -p# 附:如果再次使用 mysql -u root 这样免密登录是不成功的,停止重启后会失效。
二、使用 mysqld
重置密码
-
停止服务
# systemctl 启动的使用这个停止 $ sudo systemctl stop mysql# mac 本机,可以使用这个或可视化界面停止 $ sudo mysql.server stop
-
使用
mysqld_safe
命令启动MySQL
服务,跳过权限检查,执行后需要回车下$ sudo mysqld_safe --skip-grant-tables &
-
登录
MySQL
服务,并创建新的临时用户,拥有root
权限# 无需密码,会直接登入 $ mysql -u root # 刷新权限 mysql> FLUSH PRIVILEGES; # 创建一个临时用户 temp_root 及 temp_password mysql> CREATE USER 'temp_root'@'localhost' IDENTIFIED BY 'temp_password'; # 设置权限 mysql> GRANT ALL PRIVILEGES ON *.* TO 'temp_root'@'localhost' WITH GRANT OPTION;# 修改好后退出 MySQL mysql> exit
-
停止
MySQL
服务,并重新启动密码登入,并使用ALTER
命令修改root
用户密码# 1、停止 MySQL 服务上面有,第一条就是# 2、重启启动 MySQL 服务,并使用密码登入 # systemctl 启动的使用这个重新启动 $ sudo systemctl start mysql # mac 本机,可以使用这个或可视化界面启动 $ sudo mysql.server start# 3、临时用户密码登录 $ mysql -u temp_root -p# 4、这里的 'new_password' 是要设置的新密码,可以根据需要进行修改。此命令将修改 root 用户在本地 MySQL 服务上的密码。 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';# 5、修改好后退出 MySQL mysql> exit# 6、停止 MySQL 服务上面有,第一条就是# 附:如果再次使用 mysql -u root 这样免密登录是不成功的,停止重启后会失效。
-
再次使用
mysqld_safe
命令启动MySQL
服务,跳过权限检查,删除临时用户$ sudo mysqld_safe --skip-grant-tables & $ mysql -u root mysql> FLUSH PRIVILEGES; mysql> REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'temp_root'@'localhost'; mysql> DROP USER 'temp_root'@'localhost'; mysql> exit
-
再次重启
MySQL
服务,并使用修改好的root
密码登入# 1、停止 MySQL 服务上面有,第一条就是# 2、重启启动 MySQL 服务,并使用密码登入 # systemctl 启动的使用这个重新启动 $ sudo systemctl start mysql # mac 本机,可以使用这个或可视化界面启动 $ sudo mysql.server start# 3、密码登录 $ mysql -u root -p
三、使用 MySQL
安全性模式重置密码
-
停止服务
# systemctl 启动的使用这个停止 $ sudo systemctl stop mysql# mac 本机,可以使用这个或可视化界面停止 $ sudo mysql.server stop
-
启动
MySQL
安全性模式$ sudo mysqld_safe --skip-grant-tables --skip-networking &
-
登录
MySQL
服务,并使用mysqladmin
命令重置密码# 无需密码,会直接登入 $ mysql -u root mysql> FLUSH PRIVILEGES; # 这里的 'new_password' 是要设置的新密码,可以根据需要进行修改。此命令将修改 root 用户在本地 MySQL 服务上的密码。 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';# 修改好后退出 MySQL mysql> exit
-
停止
MySQL
安全性模式$ sudo killall mysqld_safe# 如果在本地机器上执行上面命令无法停止安全模式,可以通过杀死进程方式解决 # 1、列出 mysqld_safe 的进程 $ ps aux | grep mysqld_safe# 2、拿到 PID 全部杀死,应该是第二列,就几位纯数字的,如果不知道可以单独输出 $ ps aux 看一下。 $ sudo kill -9 xxx xxx ...
-
停止
MySQL
服务,并重新启动密码登入即可# 1、停止 MySQL 服务上面有,第一条就是,如果通过 $ sudo kill 可以一起就杀死了。# 2、重启启动 MySQL 服务,并使用密码登入 # systemctl 启动的使用这个重新启动 $ sudo systemctl start mysql # mac 本机,可以使用这个或可视化界面启动 $ sudo mysql.server start# 3、密码登录 $ mysql -u root -p# 附:如果再次使用 mysql -u root 这样免密登录是不成功的,停止重启后会失效。
四、使用 my.cnf
重置密码
-
该方式跟上面
方式一
基本一致,只是将命令中的跳过权限指令写到my.cnf
中,修改好后再移除。 -
在修改
my.cnf
之前一定要关闭mysql
进程,关闭mysql
,不然可能会遇到mysql
的sock
不能连接的问题! -
停止服务
# systemctl 启动的使用这个停止 $ sudo systemctl stop mysql# mac 本机,可以使用这个或可视化界面停止 $ sudo mysql.server stop
-
打开
my.cnf
,没有则创建一个$ sudo vim /etc/my.cnf
进入
vim
编辑器编辑之后,找到[mysqld]
,按键盘的i
键进入编辑模式,在[mysqld]
后面任意一行添加skip-grant-tables
用来跳过密码验证的过程。按ESC
退出编辑,键入:wq
,回车即保存并退出。[mysqld] skip-grant-tables
-
启动
mysqld
服务# systemctl 启动的使用这个重新启动 $ sudo systemctl start mysql# mac 本机,可以使用这个或可视化界面启动 $ sudo mysql.server start
-
登录
MySQL
服务,并使用mysqladmin
命令重置密码# 无需密码,会直接登入 $ mysql -u root # 这里的 'new_password' 是要设置的新密码,可以根据需要进行修改。此命令将修改 root 用户在本地 MySQL 服务上的密码。 mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';# 刷新权限 mysql> FLUSH PRIVILEGES; # 修改好后退出 MySQL mysql> exit
-
再次打开
my.cnf
,移除刚才添加的skip-grant-tables
,保存重启MySQL
服务,并使用新的密码登入。
相关文章:
Mysql 忘记密码怎么重置密码(详细步骤)
每种方法都有其适用的情况,根据具体情况选择合适的方法。无论选择哪种方法,请务必在重置密码后及时删除临时用户并重新启动 MySQL 服务。 一、使用 mysqladmin 重置密码 停止服务 # systemctl 启动的使用这个停止 $ sudo systemctl stop mysql# mac 本机…...

机器学习深度学习——图像分类数据集
👨🎓作者简介:一位即将上大四,正专攻机器学习的保研er 🌌上期文章:机器学习&&深度学习——softmax回归(下) 📚订阅专栏:机器学习&&深度学习…...

【PWN · 栈迁移】[BUUCTF]ciscn_2019_es_2
第一道栈迁移题目,跌跌撞撞理解了 前言 当前溢出可用空间比较少时(极端情况下仅能覆写ebp和ret),可以通过栈迁移的方式,扩大shellcode的容纳空间,其核心是将esp移动到一段shellocode开头。而esp总是由ebp赋…...
网络编程(13): 网络通信常用命令(后续待补充)
ifconfig 一般用于查看网卡信息 ping 一般用于侦测本机到目标网络主机的网络是否通常: ping ip/域名 telnet 可以用于指定ip地址和端口的侦听服务是否存在:telnet ip port, 也可以模拟客户端给服务器发数据 netstat 用于查看网络连接状态 -a: 显示所有选项 -t&#…...

flask创建数据库连接池
flask创建数据库连接池 在Python中,您可以使用 Flask-SQLAlchemy 这个扩展来创建一个数据库连接池。Flask-SQLAlchemy 是一个用于 Flask 框架的 SQLAlchemy 操作封装,实现了 ORM(Object Relational Mapper)。ORM 主要用于将类与数据库中的表建立映射关系…...

C语言手撕顺序表
目录 一、概念 1、静态顺序表:使用定长数组存储元素。 2、动态顺序表:使用动态开辟的数组存储 二、接口实现 1、对顺序表的初始化 2、对数据的销毁 3、对数据的打印 4、检查是否需要扩容 5、尾插 6、头插 7、尾删 8、头删 9、在pos位置插入x …...
常见的排序算法
常见的排序算法 常见的排序算法包括: 冒泡排序(Bubble Sort):依次比较相邻的元素,将较大的元素交换到右侧,逐步将最大元素移动到末尾。插入排序(Insertion Sort):将数组…...

C#如何使用SQLite数据库?
文章目录 0.引言1.SQLite工具准备2.创建窗体项目并添加SQLite的命名空间3.编写使用SQLite代码4.结果展示 0.引言 SQLite是一个轻量级的嵌入式数据库,它的库文件非常小巧,不需要独立的服务器进程或配置。这使得它非常适合在资源受限的环境中使用ÿ…...

如何将表格中的状态数据转换为Tag标签显示
考虑到系统前端页面的美观程度,通常通过Tag标签来代替某条数据中的状态信息。仅通过一点操作,便能够使得页面美观程度得到较大提升,前后对比如下所示。代码基于Vue以及Element-ui组件实现。 修改前: 修改后: 修改前…...

centos中修改防火墙端口开放配置
1、直接进入文件修改 vim /etc/sysconfig/iptables 2、添加需要开放的端口 (1)添加需要开放的单个端口 4001 -A INPUT -m state --state NEW -m tcp -p tcp --dport 4001 -j ACCEPT (2)添加需要开放的某个网段端口 4001:4020 …...

程序设计 算法基础
✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。 🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心&…...

【数据结构】之十分好用的“链表”赶紧学起来!(第一部分单向链表)
💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …...

ubuntu开机自启动
ubuntu开机自启动 1、建一个test.sh脚本,并写入 #!/bin/sh gnome-terminal -x bash -c ‘cd /home/文件路径/;python3 main.py’ exit 0 2、:wq!保存 3、创建rc-local.service文件(sudo vim /etc/systemd/system/rc-local.service)…...
Git将其他分支合并至主分支
主要思想: 把分支代码合并到master,合给谁,就先切换到谁的分支 1. 当前分支是dev,开发完成后,需要合并到master分支 先把该提交的提交,需要push的push完成后,再切换分支。 否则也会告诉你要提交…...
Python+request+pytest 接口自动化测试框架入门(与unittest的比较)
1. Pythonrequestpytest 接口自动化测试框架入门 - 简书 pytest和unittest的比较: pytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点: 简单灵活,容易上手支持参数化能够支持简单的单元测试和复杂的功能测试&a…...

数据结构——复杂度
总有一天你要一个人,再暗夜中,向那座桥走过去 文章目录 一、算法的复杂度 考察形式范例 二、算法的时间复杂度 大O的渐进表示法 常见的复杂度对比 例题:消失的数字 题目的三种思路 1.排序遍历 2.减法 3.单身狗思想 三、空间复杂度…...

使用goldengate 迁移Oracle到postgresql
环境: --源端: IP:10.0.4.16 hostname:tencent Oracle数据库版本:12.2.0.1.0 ogg for oracle版本:19.1.0.0.4 SID:orcl --目标端: IP:10.0.4.16 hostname&#…...

ESP-C3入门20. CentOS开发环境及Jenkins流水线
一、准备环境 CentOS8已经正常安装Jenkins 二、升级 cmake cmake 升到 3.16以上。 cmake --version # 安装 g sudo yum install gcc-c export CXXg# 安装 CMake 的依赖项 sudo yum install -y openssl-devel# 下载 CMake 源码并进行编译安装 wget https://github.com/Kitwa…...

服务器被爬虫恶意攻击怎么办?
在有预算的情况可以采购第三方服务防火墙,没钱就使用开源的WAF进行防护。 # WAF防火墙的基本防护原理 WAF(Web 应用防火墙)可以使用多种技术来防止恶意爬虫攻击,例如: 1. 黑名单:WAF 可以使用黑名单技术来…...

JavaScript正则表达式之座机号/手机号验证校验规则
引用:https://www.bilibili.com/read/cv18300539/ 本文对利用正则表达式对手机号码进行了验证 支持格式: 座机 :xxx-xxxxxxxx、xxxxxxxxxxxx …座机区号的横杠可有可无 手机:xxxxxxxxxxx JavaScript: var: checkPhone (rule,…...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility
Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
Python爬虫(二):爬虫完整流程
爬虫完整流程详解(7大核心步骤实战技巧) 一、爬虫完整工作流程 以下是爬虫开发的完整流程,我将结合具体技术点和实战经验展开说明: 1. 目标分析与前期准备 网站技术分析: 使用浏览器开发者工具(F12&…...

视频字幕质量评估的大规模细粒度基准
大家读完觉得有帮助记得关注和点赞!!! 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用,因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型(VLMs)在字幕生成方面…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
JS设计模式(4):观察者模式
JS设计模式(4):观察者模式 一、引入 在开发中,我们经常会遇到这样的场景:一个对象的状态变化需要自动通知其他对象,比如: 电商平台中,商品库存变化时需要通知所有订阅该商品的用户;新闻网站中࿰…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
OD 算法题 B卷【正整数到Excel编号之间的转换】
文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的:a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...
uniapp 实现腾讯云IM群文件上传下载功能
UniApp 集成腾讯云IM实现群文件上传下载功能全攻略 一、功能背景与技术选型 在团队协作场景中,群文件共享是核心需求之一。本文将介绍如何基于腾讯云IMCOS,在uniapp中实现: 群内文件上传/下载文件元数据管理下载进度追踪跨平台文件预览 二…...
上位机开发过程中的设计模式体会(1):工厂方法模式、单例模式和生成器模式
简介 在我的 QT/C 开发工作中,合理运用设计模式极大地提高了代码的可维护性和可扩展性。本文将分享我在实际项目中应用的三种创造型模式:工厂方法模式、单例模式和生成器模式。 1. 工厂模式 (Factory Pattern) 应用场景 在我的 QT 项目中曾经有一个需…...