我有一个RDS实例(MySQL)和一个EC2实例(Spring )。
在本地,我的Spring应用程序在RDS.中正确地建立到我的数据库的连接。
但是当我在EC2中安装Spring应用程序时,应用程序试图连接到RDS (MySQL)中的数据库。但是它把这个错误扔到我身上:
SQLCODE: 0 SQLSTATE: 08S01 TRACE: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure The last packet sent successfully to the server
我在同一个账户下有两个VPC。VPC-A(安装了RDS )、VPC-B通过ECS EC2部署安装了服务。 VPC-B有多个子网。通过ECS EC2服务部署的服务无法与RDS集成。它一直收到以下错误消息(“Is the server running on host "....") 其中,从Ec2instance(E1) Inc. VPC-B子网以telnet身份登录RDS数据库端口可以连接到数据库。 但是,如果通过ECS安装相同的服务,则无法启动服务器。当手动尝试启动容器时,它可以工作(能够连接到数据库)。 我也在两个私有网络之间建立了对等连接,但只有在通过ECS EC2部署启
我目前在Amazon RDS上安装了一个PostgreSQL数据库。数据库连接到运行Rails应用程序的Elastic Beanstalk服务器,Rails应用程序可以很好地使用它(在生产站点上,我可以很好地修改数据库。我还可以通过SQL工作台查看数据库,并且我可以看到我在生产站点上所做的更改反映在数据库中)。
因此,我知道数据库工作正常,我的弹性beanstalk服务器连接得很好,我的Rails应用程序也连接得很好。
然而,当我尝试通过我的EC2实例连接到数据库时(注意:这个实例与我的EB和RDS实例(弗吉尼亚北部)位于不同的区域(俄亥俄州),我得到这个错误:
psql: could not
我用AWS建立了一个免费的帐户,并安装了我的apache服务器并运行。接下来,我设置了一个RDS MySQL RDS数据库,并尝试使用mysqli_connect()和mysqli()从运行在EC2服务器上的页面连接到EC2数据库。它不连接,在ling时间之后显示504网关超时错误。我试着连接到一个MariaDB,结果仍然一样。
<?php
include "../inc/dbinfo.inc";
$db_server = 'silkweb-maria.chwegpctvkzc.us-east-2.rds.amazonaws.com';
if (is