我一直得到连接ETIMEDOUT 172.31.97.43:5432错误,同时试图测试我的nodejs express应用程序与postgres数据库运行在我的本地机器上连接到AWS RDS。
我已经在AWS RDS上做了必要的设置,比如;
- 设置入站和出站规则以允许所有流量
- 将公开设置为是
MY Connection安装程序在database.ts文件中查看以下内容:
import {Pool} from "pg";
export const client = new Pool({
host : 'omerenma.cs6txkhiualn.us-east-1.rds.amazonaws.com',
user : '********',
password : '********',
port : 5432,
connectionTimeoutMillis:30000
})
client.connect(function(err) {
if (err) {
console.error('Database connection failed: ' + err.stack);
return;
}
console.log('Connected to database.');
});
***client.end()***
1条答案
按热度按时间arknldoa1#
Haven花了一些时间检查我的AWS RDS设置,我意识到以下几点:
1我的vpc太多,与其他vpc冲突2我的安全组也发生冲突3我的节点版本为18+,默认情况下具有Ipv6,因为AWS RDS侦听Ipv4 4我的入站规则未正确配置
解决方案:1我删除了所有的vpc,包括默认的vpc,并创建了一个新的默认vpc 2我配置了我的入站规则,以侦听Ipv4和Ipv6,并侦听IPv4和IPv6中的所有流量。3我适当地调整了我的安全组这是修复,我的nodejs服务器现在可以连接到AWS RDS