Mysql8.0的登录大坑……(忘记登录密码也可以这么搞)

Posted 碎冰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql8.0的登录大坑……(忘记登录密码也可以这么搞)相关的知识,希望对你有一定的参考价值。

  关于安装和使用就不说了,属于基本操作了;

  我来重点记录一下关于使用前,使用navicat登录的时候报错,1130和2059

  查看安装后随机生成的密码: grep ‘temporary password‘ /var/log/mysqld.log

  原因:mysql8的密码验证机制变更caching_sha2_password,且密码要求数字+大小写字母+特殊字符(一般是下划线),且长度大于8;

  解决方法:变更加密规则,修改密码

  1.编辑mysql配置文件:

vim /etc/my.cnf

  2.在pdi这行下边添加一行,并保存退出:

skip-grant-tables

  3.重启MySQL服务:

service mysqld restart 

  4.免密登录mysql,密码直接敲回车:

mysql -u root -p

  5.选择数据库:

use mysql;

  6.查看当前数据库信息,其中表中信息:

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

  user:登录数据库用户名;

  authentication:用户密码;(5.7.9以后不用password字段了,什么鬼,简单点不好吗?)

  plugin:加密方式;

select host, user, authentication_string, plugin from user; 

  7.修改成我们需要的信息:(可以单独添加一个登录用户,或者直接在root上做文章)

update user set host=%,plugin=mysql_native_password,authentication_string=‘‘ where user=root; 

  8.退出mysql

quit

  9.删除 /etc/my.cnf 文件最后的 skip-grant-tables,保存并退出,并重启mysql服务

vim /etc/my.cnf
service mysqld restart

  10.重新登录到mysql,并修改密码(注意,上边如果把root的host改成了%,下边这里的localhost要写%)

mysql -u root -p
ALTER user root@localhost IDENTIFIED BY [email protected];

  搞定!


以上是关于Mysql8.0的登录大坑……(忘记登录密码也可以这么搞)的主要内容,如果未能解决你的问题,请参考以下文章

mysql8.0.18忘记密码问题

忘记 mysql 8.0 root 密码 怎么修改

Chrome 62 的大坑:修改密码后始终使用保存的旧密码登录

Macbook下设置mysql8.0.11密码

保姆级mysql8.0.32安装配置教程(windows 64位)以及mysql的root密码忘记怎么办

华为交换机登录密码忘记了怎么办