1. docker部署Mysql数据库,连接不上,工具报错unkown error或者can’t connection
- 首先确保用户名,密码没错
- docker exec -it 容器id /bin/bash 进入部署MySQL的docker容器
- mysql -u用户名 -p密码 MySQL命令行登录。如果能正常登录,那么可能是宿主机路由没开导致其他机器不能连接,如果不能登录,检查MySQL是否启动,或其他问题导致
- exit 退出mysql的docker容器
- sysctl net.ipv4.ip_forward 检查部署的宿主机是否开启路由 1是开了,0未开
- echo “net.ipv4.ip_forward = 1” >>/etc/sysctl.conf 或者 echo net.ipv4.ip_forward = 1 >>/etc/sysctl.conf 修改路由
- sysctl -p 重新加载(生效)修改的配置文件
- 再次查看是否开启宿主机路由,确认开启后,再在其他机器连接数据库即刻
2.数据库连接不上也有可能是限制访问
- 进入docker容器命令行登录MySQL mysql -u用户名 -p密码
- show databases;展示所有库名
- use mysql; show tables; 切换至MySQL库,展示所有表名
- select * from user 查看user表中是否有开放所有host节点。如果没有则是限制了ip访问,新增一条记录,host 配置 % (对所有ip开放)
- flush privileges; 刷新MySQL缓存,重新连接即刻