英文:
Communications link failure connecting spring boot app to aws aurora
问题
我正在尝试将我本地创建的 Spring Boot 应用程序连接到 AWS 无服务器 Aurora 数据库。
我已经添加了 Maven 依赖:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.18</version>
</dependency>
同时创建了一个 application.properties 文件:
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://myawsclusterlink:3306/mycluster
spring.datasource.username=myusername
spring.datasource.password=mypassword
spring.datasource.hikari.minimum-idle=0
spring.datasource.hikari.maximum-pool-size=10
spring.datasource.hikari.connection-timeout=60000
spring.datasource.hikari.max-lifetime=90000
spring.datasource.hikari.idle-timeout=90000
我还为数据库创建了一个 VPC 入站规则组,以允许来自我的 IP 地址的流量。
我的问题是,当我运行应用程序时,我的连接始终失败,并显示错误消息:
com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
我想知道问题出在哪里。我的 URL 是不正确的吗?我在 AWS 上没有启用某些内容吗?我的代码中是否有遗漏的部分?
另外,我实际上不知道如何测试并查看此情况下问题的根源。
英文:
I am trying to connect the spring boot application I have created locally to an aws serverless aurora database.
I have added the maven dependency:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.18</version>
</dependency>
As well as created an application.properties file:
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://myawsclusterlink:3306/mycluster
spring.datasource.username=myusername
spring.datasource.password=mypassword
spring.datasource.hikari.minimum-idle=0
spring.datasource.hikari.maximum-pool-size=10
spring.datasource.hikari.connection-timeout=60000
spring.datasource.hikari.max-lifetime=90000
spring.datasource.hikari.idle-timeout=90000
I have also created a VPC inbounds group for the db to allow incoming traffic from my IP address.
My Issue is that that when I run the app, my connection keeps failing with an error message:
com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
I would like to know where is the problem. Is my url wrong? Have I not enabled something on aws? Is there something missing in my code?
Also, I don't really know how to test and see where the problem is coming from in this case.
答案1
得分: -1
从无服务器切换到预置的Aurora并启用公共访问解决了这个问题。
英文:
Changing from serverless to provisioned aurora and enabling public access solved the issue
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论