一分钟解决MySQL8.0+版本远程连接问题

660 阅读1分钟

一、发生问题

我们用docker安装mysql发现远程连接不上,8.0+版本不再使用默认的mysql_native_password插件

  • 远程连接不上
  • 一套操作进入docker容器内部,发现mysql_native_password is not loaded
  • show plugins 发现没得mysql_native_password
  • install plugin mysql_native_password 发现不管用
  • 直接update user 报错 Duplicate entry '%-root' for key 'user.PRIMARY'

这都不是问题,一分钟解决问题

二、解决办法

1.DBManager驱动属性设置,设置完立马可以连接了

image.png

2.yml文件里面设置参数,代码也可以连接了

allowPublicKeyRetrieval=true

image.png

三、反思

人家mysql官方都不想用mysql_native_password插件了,觉得不安全,你咋还死皮赖脸的非要用这个呢,别总用老套路,用发展的眼光来看