IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Mysql用户密码管理 -> 正文阅读

[系统运维]Mysql用户密码管理

  • Mysql8.0以上重置密码
  1. 关闭mysql服务:systemctl stop mysqld
  2. 修改mysql配置文件,添加免密登陆设置skip-grant-tables
    vi /etc/my.cnf
  3. 启动mysql服务:systemctl start mysqld
  4. 免密登录:mysql -u root
    选中系统库(?为了访问mysql.user用户表,不要随便选别库?):
    use mysql;

https://img2020.cnblogs.com/blog/2289371/202110/2289371-20211017145940072-1735564279.png

说明:8.0版本不允许在跳过策略 skip-grant-tables 时修改密码。

先清除root用户密码,删除my.conf添加的 skip-grant-tables 后,通过空密码正常访问数据库后,就可以修改密码了。

https://img2020.cnblogs.com/blog/2289371/202111/2289371-20211105150959741-747497520.png


补充:5.7/5.5 版本在此时就可以直接改一个新密码了。

  1. 清除 root 用户的密码
    update user set authentication_string = '' where user = 'root';

并退出:

https://img2020.cnblogs.com/blog/2289371/202110/2289371-20211017150350173-1393787400.png


接着把 my.cnf 添加的 skip-grant-table 删掉,并重启 mysql 服务。

现在我们已经可以正常登录数据库了:

mysql -u root –p
enter password 处(输密码的地方)敲击回车即可登录。

https://img2020.cnblogs.com/blog/2289371/202110/2289371-20211017152041935-2007495523.png


查看密码策略:

SHOW VARIABLES LIKE 'validate_password%';

https://img2020.cnblogs.com/blog/2289371/202110/2289371-20211017153344037-1781813875.png

https://img2020.cnblogs.com/blog/2289371/202111/2289371-20211103103332711-1770404152.png

补充:修改密码策略(不建议使用简单密码):

只校验长度:set global validate_password.policy=Low;??

密码长度6位:set global validate_password.length=6;??

  1. 最后根据策略修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED WITH MYSQL_NATIVE_PASSWORD BY '新密码';

  1. 可能出现的报错:?host ( 主机名)? 错误

https://img2020.cnblogs.com/blog/2289371/202110/2289371-20211017152837672-1478434294.png

解决:select user,host from user;? ?根据结果修改:‘root’@'localhost'? --->? 'root'@'%'? 即可
update user set host="%" where user='root';

?

https://img2020.cnblogs.com/blog/2289371/202110/2289371-20211017153036960-1533382211.png

?补充:'%',表示可以远程登录,并且是除服务器外的其他任何终端,%表示任意IP都可登录。
'localhost',表示可以本地登录,即可以在服务器上登陆,localhost则只允许本地登录。

  • Mysql7以及旧的版本重置密码
  1. 3.用户为自己更改密码
    mysql>set password=password(‘123456’);
  2. root用户为其他用户找回密码
    mysql>set password for atguigu@‘%’=password(‘123123’);
  3. root找回自己的密码并修改
    关闭数据库,修改主配置文件(/etc/my.cnf)添加:skip-grant-tables
    #vim/etc/my.cnf
    skip-grant-tables
    启动数据库,空密码登录并修改密码
    update mysql.user set password=password(‘新密码’) where user=’root’;
  4. 删除skip-grant-tables,重启数据库验证新密码
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-12-18 16:20:37  更:2021-12-18 16:20:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 4:27:07-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码