服务器mysql连接我碰到的错误

搞了2个下午,总算成功了

我在服务器上使用docker部署了java项目与mysql,但mysql连接一直出现问题

1.首先,我使用的是localhost连接,心想反正都在服务器上吧。

jdbc:mysql://localhost:3306/fly-bird?useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=UTF-8&rewriteBatchedStatements=true

因为localhost 指的是当前计算机,服务是用一个个的docker部署的,localhost定位不到

2.我尝试使用我的服务器IP地址进行连接,心想反正映射了吧,我本地使用datagrip可以连上

jdbc:mysql://183.224.167.31:3306/fly-bird?useSSL=false&serverTimezone=Asia/Shanghai&

但是连接仍然失败。

即使DataGrip可以从本地连接到183.224.167.31:3306,也需要确保运行应用程序的Docker容器(e6e66e63f529)可以访问这个地址。 由于应用程序容器和MySQL容器位于不同的Docker网络中,应用程序容器可能无法直接访问宿主机的183.224.167.31地址。

3.我就开始将容器连接到同一个Docker网络。成功了,重新打包部署,因为我的yml是在dockerfile直接复制的,不是读取的。

jdbc:mysql://172.24.0.5:3306/fly-bird?useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=UTF-8&rewriteBatchedStatements=true

相关推荐
勤源科技6 小时前
全链路智能运维中的实时流处理架构与状态管理技术
运维·架构
tryCbest6 小时前
Linux使用Docker部署项目后期更新
linux·运维·docker
-雷阵雨-6 小时前
MySQL——桥梁JDBC
数据库·mysql·oracle
孤独得猿6 小时前
聊天室项目开发——etcd的安装和使用
linux·服务器·c++·etcd
竹等寒7 小时前
Linux-网络安全私房菜(二)
linux·服务器·web安全
早睡冠军候选人8 小时前
Ansible学习----Ansible Playbook
运维·服务器·学习·云原生·容器·ansible
sulikey8 小时前
从实验出发深入理解Linux目录权限:r、w、x分别控制什么?能否进入目录到底由谁决定?
linux·运维·服务器·ubuntu·centos
JanelSirry8 小时前
MySQL分区表(PARTITION):水平分表示例 (基于用户ID哈希分表)不依赖第三方中间件
mysql·中间件·哈希算法
李白你好8 小时前
一款专业的多数据库安全评估工具,支持 **PostgreSQL、MySQL、Redis、MSSQL** 等多种数据库的后渗透操作
数据库·mysql·postgresql
恋红尘8 小时前
Mysql
数据库·mysql