mysql8 为了提升安全性将默认的权限校验插件由mysql_native_password变更为caching_sha2_password,但是第三方链接库更新没有完全完成跟进。例如go在连接mysql8.0时会报错误“this authentication plugin is not supported”,根本原因在于go-sql-driver不支持新的校验方式。目前有三个解决方案:
1. 使用低版本的mysql
2. 更新最新的go驱动
3. 更改mysql默认权限校验方式,
-
mysql --help | grep "Default options" -A 1
- sudo vi /etc/my.cnf 添加内容:
[mysqld]
# Only allow connections from localhost
bind-address = 127.0.0.1
default-authentication-plugin=mysql_native_password