原因:如果安装mysql8.0 数据库加密方式与低版本不一样 如果使用的是旧版的Navicat就会报错,如果不想换新版的Navicat可以进行如下操作。
1.linux下 进入docker中的容器
docker exec -it mysql /bin/bash
2. 进入mysql
mysql -uroot -p密码
3. 更改加密方式
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
4. 重置密码
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
5. 刷新
mysql> FLUSH PRIVILEGES;
6. 退出(不退出也可能不行)
mysql> exit;