问题产生背景:

安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码;找了网上好多资料都不尽相同,根据自己的问题总结如下:

第一步:修改配置文件免密码登录mysql

[html] view plaincopy
  1. vim /etc/my.cnf

1.2 在 [mysqld]最后加上如下语句 并保持退出文件;

[html] view plaincopy
  1. skip-grant-tables

1.3 重启mysql服务:

[html] view plaincopy
  1. service mysqld restart

第二步免密码登录到mysql上;直接在命令行上输入:

[html] view plaincopy
  1. mysql
  2. //或者
  3. mysql -u root -p
  4. //password直接回车

第三步: 给root用户重置密码;

3.1 首先查看当前root用户相关信息,在mysql数据库的user表中;

[html] view plaincopy
  1. select host, user, authentication_string, plugin from user;

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

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

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

plugin: 密码加密方式;

3.2 如果当前root用户authentication_string字段下有内容,先将其设置为空;

[html] view plaincopy
  1. use mysql;
  2. update user set authentication_string='' where user='root';

3.3 退出mysql, 删除/etc/my.cnf文件最后的 skip-grant-tables 重庆mysql服务;

3.4 使用root用户进行登录,因为上面设置了authentication_string为空,所以可以免密码登录;

[html] view plaincopy
  1. mysql -u root -p
  2. passwrod:直接回车;

3.5使用ALTER修改root用户密码;

[html] view plaincopy
  1. ALTER user 'root'@'localhost' IDENTIFIED BY 'Qian123#'

至此修改成功; 从新使用用户名密码登录即可;

修改中遇到的问题:

1. 根据网上的这篇文章进行修改,报错;

网友文章:Linux-CentOS7下修改root密码和密码过期问题:

在使用这句话修改密码时报错:

[html] view plaincopy
  1. update user set password = password('new-password') where user = 'root' ;
  2. or
  3. update user set authentication_string= password('new-password') where user = 'root' ;

报错原因:mysql5.7.6以后废弃了user表中的password字段和 password() 方法;

所以上面的方法对 mysql8.0.1是行不通的;

2. 根据网友的这篇文章进行修改,报错;

网友文章: 修改MySQL 5.7.9版本的root密码方法以及一些新变化整理

3. 参考MYSQL8的官网文档, 感觉写的也很水;

MySQL8官网文档: mysql8.0 reference for manual

4. 一定不要采取如下形式该密码:

[html] view plaincopy
  1. use mysql;
  2. update user set authentication_string="newpassword" where user="root";

这样会给user表中root用户的authentication_string字段下设置了newpassword值;

当再使用ALTER USER 'root'@'localhost' IDENTIFITED BY 'newpassword'时会报错的;

因为authentication_string字段下只能是mysql加密后的41位字符串密码;其他的会报格式错误;

*THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ManagementAndJava/article/details/80098525

Centos7重置Mysql 8.0.1 root 密码相关推荐

  1. mysql重置root密码centos_Centos7重置Mysql 8.0.1 root 密码

    问题产生背景: 安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码:找了网上好多资料都不尽相同,根据自己的问题总结如下: 第一步:修改配置文件免密码登录mysql vim /etc ...

  2. vCenter Server Appliance 6.5 中重置丢失或忘记的 root 密码

    vCenter Server Appliance 6.5 中重置丢失或忘记的 root 密码 目前安装vCenter Server Appliance 6.5客户原来越多,给用户配置过程中,往往会忽略 ...

  3. mysql5.0忘记root密码_【咨询】mysql忘记root密码的处理方法(5.5/5.0)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 由于平时接触mysql5.0 和 5.5会比较多,下面分享一个修改root密码的小工具,自己测试mysql 5.0没有问题,mysql 5.5应该是无法使 ...

  4. CentOS7安装MySQL 8.0安装

    Centos安装mysql 1.配置MySQL 8.0的安装源: sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-e ...

  5. mysql的设置更改root密码、连接、常用命令

    13.1 设置更改root密码 更改环境变量PATH ,增加mysql绝对路径 首次直接使用mysql会提示'该命令不存在',原因是还没有将该命令加入环境变量,如果要使用该命令,需要使用其绝对路径:/ ...

  6. mysql 5.7 修改root 密码

    前言 MySQL5.7为了加强安全性,yum 安装后为root用户随机生成了一个密码,同时修改root密码上,也增加了一些校验,会报 Your password does not satisfy th ...

  7. 解决MySQL 8.0 设置简单密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy require...

    MySQL8.0下设置简单密码出现错误提示:ERROR 1819 (HY000): Your password does not satisfy the current policy requirem ...

  8. MySQL 5.6忘记root密码

    一. 修改配置文件 首先找到mysql的配置文件,如: /etc/my.cnf 在[mysqld]字段下新增如下内容,然后保存退出. skip-grant-tables 然后重启mysql服务 ser ...

  9. MySQL8.0修改root密码

    一.问题: 当你在Linux上刚下好MySQL的时候,使用mysql -uroot -p登录时无需密码,你输不输密码或者随便输入密码都是可以登录的,但是如果你想要使用root用户远程访问MySQL8. ...

  10. mysql远程访问,修改root密码

    mysql -uroot -p #input password use mysql; update user set host='%' where user='root'; flush privile ...

最新文章

  1. C#选择目录对话框FolderBrowserDialog
  2. numpy 筛选面积最大
  3. UA MATH563 概率论的数学基础 中心极限定理4 独立一元随机变量的性质
  4. matlab 折线图_MATLAB作图实例:13:折线图和条形图的双轴图
  5. 牛客题霸 [拼接所有的字符串产生字典序最小的字符串] C++题解/答案
  6. 数组超过预设的最大数组大小_工作表数组大小的扩展及意义
  7. POJ 2584 T-Shirt Gumbo (二分图多重最大匹配)
  8. 使用 jQuery Mobile 与 HTML5 开发 Web App (六) —— jQuery Mobile 内容格式
  9. java 线程 定时器_java 多线程定时任务
  10. eclipse配置xml的自动提示
  11. QML 获取当前时间戳 yyyy-MM-dd hh:mm:ss.zzz
  12. python反编译学习之字节码详解
  13. 学生信息管理系统总体设计规划书
  14. 罗马数字转化为阿拉伯数字
  15. 如何理解“方差越大信息量就越多”
  16. ASP.NET Core 中文文档目录
  17. 基于6N137高速光耦开关电路
  18. Postgresql-11 根据多字段创建分区表
  19. 取消Wince App 应用启动动画和隐藏分区注册表项
  20. scandir 参数

热门文章

  1. 计算机丢失disrupt,disrupt造句
  2. allegro中10mil过孔_allegro阻抗隔层参考设置以及via copy操作
  3. 【2019杭电多校第五场1005=HDU6628】permutation 1(全排列+预处理+思维)
  4. python 遗传算法 agv_遗传算法在AGV的路径规划中的应用
  5. android中横向滑动功能,Android开发基于ViewPager+GridView实现仿大众点评横向滑动功能...
  6. controlleradvice 参数_Spring mvc中@ModelAttribute和@ControllerAdvice使用
  7. oracle11g是什么语言,oracle11g下载
  8. mysql 全文搜索怎么设置_mysql 全文搜索 技巧
  9. .net 考试系统人一多就断开了_【项目】Java在线考试系统
  10. 极客大学产品经理训练营 认识产品经理 作业1