1、首先确认你docker 绑定得端口号 是否防火墙拦截
2、查看docker安装得mysql中 是否开放了 用户连接得权限
docker安装mysql过程中 配置mysql的字符编码 请转至https://hub.docker.com/_/mysql
搜索关键字 “ Configuration without a cnf
file ”
3、输入命令 docker exec -it 容器ID mysql -u root -p 登录所创建的mysql容器。
指定本地文件 和本地数据文件 到docker安装的内部容器内
docker run -p 3306:3306 --restart always -v /Users/jianhuajin/mysql/config/my.cnf:/etc/my.cnf -v /Users/jianhuajin/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD='123' -d mysql:5.7
进入docker安装的容器内
docker exec -it test-mysql bash
修改为自启动 docker update --restart=always 容器id
4、查询 连接mysql的用户表
select host,user,plugin,authentication_string from mysql.user;
修改 密码 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
大佬解释得很清楚,亲试 已成功解决 谢谢。
详情请转至 https://blog.csdn.net/zhaokejin521/article/details/80468908