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,…...
Redis线程安全深度解析:单线程模型的并发智慧
Redis线程安全深度解析:单线程模型的并发智慧 引言:Redis的线程模型迷思 “Redis是单线程的”——这个广为流传的说法既正确又不完全正确。Redis的线程安全机制实际上是一套精心设计的并发控制体系,它既保持了单线程的简单性,又…...

动力电池点焊机:驱动电池焊接高效与可靠的核心力量|比斯特自动化
在新能源汽车与储能设备需求激增的背景下,动力电池的制造工艺直接影响产品性能与安全性。作为电芯与极耳连接的核心设备,点焊机如何平衡效率、精度与可靠性,成为电池企业关注的重点。 动力电池点焊机的核心功能是确保电芯与极耳的稳固连接。…...
深入理解 Java 多线程:原理剖析与实战指南
深入理解 Java 多线程:原理剖析与实战指南 一、引言 在现代软件开发中,多线程编程已经成为提升应用性能与响应能力的重要手段。Java 作为一门成熟的编程语言,自 JDK 1.0 起就提供了对多线程的原生支持。本文将深入剖析 Java 多线程的底层原…...

算法-多条件排序
1、数对排序的使用 pair<ll,ll> a[31];//cmp为比较规则 ll cmp(pair<ll,ll>a,pair<ll,ll>b){if(a.first!b.first)return a.first>b.first;else return a.second<b.second; }//按照比较规则进行排序 sort(a1,a31,cmp); 2、具体例题 输入样例࿱…...

OpenCV CUDA模块图像处理------创建一个模板匹配(Template Matching)对象函数createTemplateMatching()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 创建一个用于在 GPU 上执行模板匹配的 TemplateMatching 对象。 该函数返回一个指向 TemplateMatching 的智能指针(Ptr)…...

VUE前端实现自动打包成压缩文件
VUE前端实现自动打包成压缩文件 背景思路实现打包代码实现 尾巴 背景 做前端开发的兄弟们都经历过每次开发完成之后发包需要进行打包,然后将打包文件压缩。每次打好包了都得手动压缩一遍,就有点繁琐。今天我们就使用一种命令行自动压缩的方法࿰…...

从上下文学习和微调看语言模型的泛化:一项对照研究
大型语言模型表现出令人兴奋的能力,但也可以从微调中表现出令人惊讶的狭窄泛化。例如,他们可能无法概括为简单的关系反转,或者无法根据训练信息进行简单的逻辑推理。这些未能从微调中概括出来的失败可能会阻碍这些模型的实际应用。另一方面&a…...

产品经理课程(十一)
(一)复习 1、用户需求不等于产品需求,挖掘用户的本质需求 2、功能设计的前提:不违背我们的产品的基础定位(用一句话阐述我们的产品:工具:产品画布) 3、判断设计好坏的标准…...

并发编程实战(生产者消费者模型)
在并发编程中使用生产者和消费者模式能够解决绝大多数的并发问题。该模式通过平衡生产线程和消费线程的工作能力来提高程序整体处理数据的速度。 生产者和消费者模式: 在线程的世界中生产者就是产生数据的线程,而消费者则是消费数据的线程。在多线程开…...

IDEA中的debug使用技巧
详细教学视频见b站链接:IDEA的debug调试 CSDN详细博客文章链接:debug文章学习 以下为个人学习记录总结: idea中的debug模式界面如下: 现在详细介绍图标作用: 图标一(Show Execution Point)&…...