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

Ubuntu下,MySQL密码遗失时修改密码

问题背景

MySQL密码连接不上,需要重置密码

解决方案

由于修改密码本身需要连接到数据库,因此需要另一个系统账号来登录数据库。

下面是相关步骤:

1. 首先执行以下命令

sudo cat /etc/mysql/debian.cnf

获取到系统账号的密码(注意,禁止修改这个文件!!!)

image

2. 再输入以下命令

mysql -u debian-sys-maint -p

密码即刚才截图中圈出的部分,不同机器密码不同,要按照实际的填写!

3. 此时进入mysql的命令行模式,分别输入以下命令(本文以将密码设置为root为例,第三条命令设置报错请移到文章最后)

use mysql;
update user set plugin="mysql_native_password";
update mysql.user set authentication_string=password('root') where user='root' and Host ='localhost';
flush privileges;
exit;

4. 最后重启mysql,再连接mysql,验证是否修改成功

sudo service mysql restart
mysql -u root -p

 

若在上述第三步修改密码时返回ERROR 1819 (HY000): Your password does not satisfy the current policy requirements,则说明由于密码不符合mysql密码策略,需要临时调整策略,或者使用符合策略的密码,前者操作步骤如下:

1. 在mysql命令行模式下,执行以下代码,查看mysql的当前密码策略

SHOW VARIABLES LIKE 'validate_password%';

image

其中的参数说明:

validate_password_check_user_name:默认为OFF,设置为ON的时候表示不能将密码设置成当前用户名或反向用户名,大小写敏感(即以root账号连接时不可设置密码为root或toor,但是可以设置为Root,无论被设置的是哪个账号)

validate_password_dictionary_file:默认为空,用于检查密码的字典文件的路径名

validate_password_length:默认为8,密码的最小长度,也就是说密码长度必须大于或等于该值

validate_password_mixed_case_count:默认为1,如果密码策略是中等或更强的,validate_password要求密码具有的小写和大写字符的最小数量。对于给定的这个值密码必须有那么多小写字符和那么多大写字符

validate_password_number_count:默认为1,密码必须包含的数字个数

validate_password_policy:默认为MEDIUM,密码强度检验等级,可以使用数值0、1、2或相应的符号值LOW、MEDIUM、STRONG来指定。(0/LOW:只检查长度;1/MEDIUM:检查长度、数字、大小写、特殊字符;2/STRONG:检查长度、数字、大小写、特殊字符、字典文件)

validate_password_special_char_count:默认为1,密码必须包含的特殊字符个数

注:validate_password_check_user_name和validate_password_policy的校验是相互独立的

2. 设置对应的策略值,如降低最小长度和校验强度等级

set global validate_password_length=4;
set global validate_password_policy=LOW;

3. 再次执行之前失败的更改密码语句即可成功

4. 重启mysql服务之后,修改的策略会自动还原为默认值

http://www.zskr.cn/news/74976.html

相关文章:

  • 2025最新贵州伴手礼厂家/采购渠道/供应商/平台/卖场/超市TOP5推荐!地道风物+文化赋能权威榜单发布,甄选贵礼传递黔地心意
  • 001.makdown快速入门
  • Oracel VirtualBox安装Windows11时无法找到ISO文件或不满足系统要求
  • 构建个人知识库新选择:深度解析访答本地私有知识库
  • AIShareTxt入门:快速准确高效的为金融决策智能体提供股票实用的技术指标上下文
  • I know only one topic but I wear glasses in 20s
  • 云原生基石的试金石:基于 openEuler 部署 Docker 与 Nginx 的全景实录 - 指南
  • qemu如何和宿主机共享文件 - show
  • 2025贵州贵阳荣和酒坊采购渠道推荐!百年传承酱香白酒购买平台TOP5榜单发布,品味历史沉淀的醇香佳酿
  • UE5循环播放蒙太奇
  • 完整教程:神经网络—— 学习与感知器
  • 智能座舱
  • 团体设计天梯赛L1题解
  • 完整教程:乡镇外卖跑腿小程序开发实战:基于PHP的乡镇同城O2O
  • 关于博客后续
  • 2025.12.6博客
  • 英语_阅读_a robot for science fair_待读
  • 2025年什么牌子的轮胎比较好:权威测评优质轮胎排行
  • faster r cnn中的动量
  • 需求的分层
  • 12.5 程序员修炼之道:从小工到专家 第7章 在项目开始之前 - GENGAR
  • 理想L9更换轮胎推荐:2025年超500万用户力荐的组合
  • 小红书玩疯了!Ai像素级拆解提示词+Nano Banan Pro免费使用教程(附Api接入实战)
  • 2025.12.6日20:13-harsh无情的;粗糙的
  • 软件需求分析
  • 详细介绍:剪贴板监控记:用 Go 写一个 Windows 剪贴板监控器
  • 人工智能:用 Gemini3 一键生成视觉炸裂的粒子躲避游戏!流体粒子 + 渐变流光全实现
  • 轮数选择
  • NOIP 2025游记
  • 20个免费电子书下载网站,实现电子书自由!(2025持续更新)