1. 查看Mysql是否启动成功
docker ps
正常启动
2. 进入容器连接mysql
docker exec -it c_mysql bash
mysql -uroot -p
发现可以访问
3. 查看并开放权限
mysql> grant all privileges on . to root@'%'; #授权
mysql> flush privileges; #刷新权限表
4. 开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#重载
firewall-cmd --reload
#重启
systemctl restart firewalld
5. 宿主机连接mysql
mysql -u root -p
无法连接
6. 查看宿主机的路由有没有开启
sysctl net.ipv4.ip_forward #返回值为1代表路由已开启,为0就是未开启
7.开启宿主机路由
cd /etc/
vim sysctl.conf
net.ipv4.ip_forward = 1 #sysctl.conf中添加
添加保存之后运行:
sysctl -p #加载内核
sysctl net.ipv4.ip_forward #再次查看路由是否开启
宿主机可以正常访问了