使用DBeaver CE导入从生产服务器使用mysqldump导出的备份sql脚本到本地测试环境时出现错误:
ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded:
MySQL8之后更换了密码认证策略,网上看了其他的教程都是直接修改MySQL8服务器的密码认证策略,恢复到MySQL5使用native_passwd,但我觉得这样不是最好的解决方案,简单研究了解决了,记录下解决思路和步骤:
1、DBeaver使用MySql的二进制文件进行执行脚本功能,在Windows版客户端中可以看到默认下载的是MySQL5.5版本的mysql.exe和mysqldump.exe
2、DBeaver提供了自定义MySQL客户端的功能,那我的解决思路就是新增一个MySQL8的数据库文件mysql.exe和mysqldump.exe就可以了,MySQL官方网站只提供了Windows平台的安装包,DBeaver官方也没找到MySQL8的二进制文件下载,网上搜索后发现了这个下载地址
MySQL binaries for Windows x64 v8.0.12.zip
3、下载后解压压缩包,点击“添加数据库地址”按钮,选择新的MySQL8的所在目录
确认加载的客户端为MySQL8的
接下来就可以愉快的执行备份出来的sql脚本了
如果觉得解压后的mysql8的文件夹太占空间可以删除/bin目录下的 mysqld.pdb文件,不影响使用