本文摘自PHP中文网,作者angryTom,侵删。

在用navicat连接MySQL8+时会出现2059错误,这是由于新版本的MySQL使用的是caching_sha2_password验证方式,但此时的navicat还没有支持这种验证方式。下面为大家介绍一下具体的解决办法。
推荐教程:MySQL入门视频教程
解决方法就是将验证方式改为以前版本(5.7及以下)使用的验证方式mysql_native_password。具体的验证方式可以查看默认数据库'mysql'中user表plugin字段。
在命令行中登录数据库时不会出现2059错误,在命令行中登录数据库,执行下面的命令。
1 |
|
'root'可以改为你自己定义的用户名,'localhost'指的是该用户开放的IP,可以是'localhost'(仅本机访问,相当于127.0.0.1),可以是具体的'*.*.*.*'(具体某一IP),也可以时'%'(所有IP均可访问)。'password'是你想使用的验证密码。
相关阅读 >>
更多相关阅读请进入《Navicat》频道 >>

数据库系统概念 第6版
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。