MySQL 8设置密码免密登录问题

Posted w1990end

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 8设置密码免密登录问题相关的知识,希望对你有一定的参考价值。

mysql 8设置密码免密登录问题

问题:MySQL8 安装的时候设置了root用户密码,用mysql -u root -p进行登录,不用输入任何密码就能登陆,如图:

解决方案如下:
1、进入mysql数据库,输入use mysql,如图:

2、查询数据库用户的用户名,密码,host以及加密方式。命令如下:

select host, user, authentication_string, plugin from user; 
  • 执行结果如下图:

    由于在mysql 5.7.9以后废弃了password字段和password()函数,所以5.7以上的mysql都得用authentication_string代替password,很明显上图的root的用户密码为空,加密方式为auth_socket 。

3、修改成我们需要的信息,命令如下:

update user set plugin='mysql_native_password',authentication_string='' where user='root'; 


4、设置root用户的密码,命令如下:

ALTER user 'root'@'localhost' IDENTIFIED BY '123456';
  • 执行结果如下图:

5、退出数据库,再次用root的空密码进行登录,命令如下:

mysql -u root -p
  • 执行结果如下图:

    由上图结果可以看到root的密码设置成功

6、重新使用root的密码进行登录,命令如下:

mysql -u root -p
  • 执行结果如下图:

    由上图可以看出可以使用root的密码进行登录

至此,MySQL 8设置密码免密登录问题已解决!

以上是关于MySQL 8设置密码免密登录问题的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 8设置密码免密登录问题

MySQL用户设置密码后,如何免密登录

mysql免密登录以及修改密码

postgres shell免密登录

linux免密登录secure报密码过期

LinuxcentOS7基本配置,jdk,mysql,免密登录,xshell密钥登录