千家信息网

mysql8重置root用户密码的完整步骤

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,前言最近很多新入职的同事问这个问题,特别是通过 homebrew 自动安装的 mysql ,其版本默认已经是 8.0 了,由于增加了一些安全策略等限制,所以修改用户密码会稍微麻烦些,索性就把这个总结贴
千家信息网最后更新 2026年11月01日mysql8重置root用户密码的完整步骤

前言

最近很多新入职的同事问这个问题,特别是通过 homebrew 自动安装的 mysql ,其版本默认已经是 8.0 了,由于增加了一些安全策略等限制,所以修改用户密码会稍微麻烦些,索性就把这个总结贴一下吧。

下面话不多说了,来一起看看详细的介绍吧

步骤如下:

1、首先查看 root 用户相关信息,在 mysql 数据库的 user 表中:

select host, user, authentication_string, plugin from user;

host:允许用户登录的ip'位置'%表示可以远程;

user:当前数据库的用户名;

authentication_string:用户密码;在mysql 5.7.9以后废弃了password字段和password()函数;

plugin:密码加密方式;

如果发现 root 用户的 authentication_string 字段下有内容,先将其设置为空:

use mysql;update user set authentication_string='' where user='root';

2、重启 mysql 服务,mac 里直接命令把服务关闭:

mysql.server stop

或者把 mysql 进程 kill 掉。然后在启动 mysql 服务:

mysql.server start

3、用 root 用户登录,因为已经把 authentication_string 设置为空,所以可以免密码登录:

mysql -u root -ppasswrod:

不需要输入密码,直接回车即可

4、进入 mysql 库,使用 ALTER 修改 root 用户密码:

ALTER user 'root' IDENTIFIED BY '123456' ;

语句中的 root 需要跟你实际 user 表里 root 用户存的是 root 还是 root@localhost 而定,由于我这里把密码改成了 123456 这样比较简单的格式,可能 mysql 8 默认密码策略不允许,非要改的话可以先修改一下密码策略:

set global validate_password.length = 6 ;set global validate_password.policy = 'LOW';FLUSH PRIVILEGES;

这里把密码长度由默认的8位改成了6位,并且密码策略级别由 MEDIUM 改成了 LOW。如果要查看密码校验相关设置的话可以直接查询系统变量:

SHOW VARIABLES LIKE 'validate_password.%';

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。

密码 用户 策略 内容 服务 登录 字段 数据 数据库 学习 步骤 安全 下有 价值 位置 信息 函数 前言 变量 同事 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 科技互联网 广州大一互联网络科技有限公司 山东特亿宝互联网科技有限公司 互联网科技工作委员会 中关村互联网 科技集团 河南真二互联网科技有限公司 致骋互联网科技 互联网金融科技创新 互联网科技大会 中国最先进互联网科技公司 富国互联网科技创新基金 博兴的互联网电子科技公司 常德市电业局互联网科技部 互联网金融科技公司干啥的 崇明区互联网教育科技售后服务 深圳市罗太互联网科技有限公司 浙南科技城互联网大厦招聘 东营紫格互联网科技 互联网企业和网络科技有限公司 广州全民伙伴互联网科技有限公司 喔噻互联网科技有限公司 金融科技还是互联网 狮子座互联网科技有限公司 致聘互联网科技 重庆科技学院互联网 科技类的互联网平台 宝灵互联网科技有限公司 江阴互联网智能科技产品进口 中国互联网公司排名锤子科技 元气玛特互联网科技公司是外包吗
0