赞
踩
关于Navicat连接MySQL出现2059错误解决方法
如上图的报错提示可知,报错原因是caching_sha2_password不能加载。
这是因为8.0之后mysql更改了密码的加密规则,而目前已有的客户端连接软件还不支持Mysql8新增加的加密方式caching_sha2_password,所以我们需要修改用户的加密方式,将其改为老的加密验证方式。
- 我这里mysql是安装再docker里面的
- docker ps //查看正在运行的容器
- docker exec -it 43e99 bash //进入容器内部
mysql -uroot -p //登录mysql
- //查看所有用户的权限
- SELECT User, Host FROM mysql.user;
- //如果root的host列显示的是localhost可以通过下面的命令更新,改为%表示允许任意host访问
- update user set host = '%' where user = 'root';
- ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; //设置新的加密规则
- ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';//更新用户密码
- FLUSH PRIVILEGES;//刷新权限
连接成功
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。