这种情况很多,首先判断你是云服务器还是本地,如果你是云服务器,去控制面板看安全组,添加3306端口。
其他的,要么没有在实例或者虚拟机上开放3306,要么MySQL没有给与远程访问权限。
以下方法二选一
关闭防火墙
systemctl stop firewalld.service
开启端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
数据库开启远程连接
启动docker的mysql
docker exec -it mysql mysql -u root -p
执行命令
grant all privileges on . to ‘root’@’%’ identified by ‘密码’;
flush privileges;
重启mysql容器
docker restart mysql