拉取镜像
https://hub.docker.com/_/mysql?tab=tags&page=1&ordering=last_updated
查看mysql的版本
docker pull mysql:8.0.22
1、mysql安装
docker run -p 3308:3306 --name mysql3 \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:8.0.22
–name:容器名,此处命名为mysql
-e:配置信息,此处配置mysql的root用户的登陆密码
-p:端口映射,此处映射 主机3306端口 到 容器的3306端口
进入容器
docker exec -it 容器名或者id bash
mysql -uroot -p123456 #连接
2.连接 权限问题
https://blog.csdn.net/weixin_37998647/article/details/80428613
mysql -uroot -p123456
use mysql; #查看权限
select host, user, authentication_string, plugin from user;
CREATE USER 'root'@'localhost' IDENTIFIED BY '123456'; #换成用户名 密码
GRANT ALL ON *.* TO 'root'@'%';
GRANT ALL ON *.* TO 'root'@'localhost';
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
FLUSH PRIVILEGES; #刷新权限
如果你的容器运行正常,但是无法访问到MySQL,一般有以下几个可能的原因: