docker 运行mysql最新版本用navicat连接报错:1251
主要是:新版的mysql的加密方式发生了变化,解决方法如下:
1:进入docker容器:
docker exec -it mysql(启动mysql时候起的别名) /bin/bash
2:登陆mysql数据库:
mysql -uroot -pxxxx
3:查看用户的密码加密方式
select host,user,plugin,authentication_string from mysql.user;
4:更新用户的加密方式
更新user为root,host为% 的密码为syn123;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
更新user为root,host为localhost 的密码为syn123;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';