native 链接 mysql 8.0以上版本 报错2059

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了native 链接 mysql 8.0以上版本 报错2059相关的知识,希望对你有一定的参考价值。

mysql版本是8.0.4


 由于新版本的MySQL新特性导致的。

mysql> select Host,User,plugin from mysql.user;
+-----------+------------------+-----------------------+
| Host      | User             | plugin                |
+-----------+------------------+-----------------------+
| localhost | mysql.infoschema | mysql_native_password |
| localhost | mysql.session    | mysql_native_password |
| localhost | mysql.sys        | mysql_native_password |
| localhost | root             | caching_sha2_password |
+-----------+------------------+-----------------------+

原因:认证方式改变导致的。在老版本里,一般使用加密方式为mysql_native_password。所以可以直接修改为老版本的加密方式,或者升级新版本的加密方式.

解决方式更改为老版本的加密

ALTER USER ‘vuluser‘@‘%‘ IDENTIFIED WITH mysql_native_password BY ‘password‘; //修改加密方式

FLUSH PRIVILEGES

这个地方可能回报1819异常

mysql> ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘Hxd123‘ PASSWORD EXPIRE NEVER;
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

原因:<font color=#0099f6 >mysql8.0以上密码策略限制必须要大小写加数字特殊符号</font>


以上是关于native 链接 mysql 8.0以上版本 报错2059的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 8.0 以上版本修改密码

Mysql数据库 | 基于Docker搭建Mysql-8.0以上版本主从实例实战

java连接mysql数据库8.0以上版本过程中遇到的坑

安装mysql 8.0版本时,使用front连接报1251错误或者navicat 连接报错2059解决方案

安装mysql 8.0版本时,使用navicat 连接报1251错误解决方案

VS2010链接Mysql Authentication to host 'xx' for user 'root' using method 'caching_