Docker安装的mysql,使用Navicat远程连接不上。错误代码:1251

问题描述

今天学习Docker,运行mysql镜像后,遇到使用navicat客户端连接Linux上的mysql容器报错。
mysql版本使用的是当前最新版本。
错误如图:
Docker安装的mysql,使用Navicat远程连接不上。错误代码:1251

解决方法

进入容器:docker exec -it mysql01 bash
进入客户端 mysql -u root -p
ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘123456’;
flush privileges;

Docker安装的mysql,使用Navicat远程连接不上。错误代码:1251

  • mysql01 是容器名称
  • 这里的原理好像是修改了加密协议,面向所有用户。最后刷新一下权限