从nodejs本地计算机连接到AWS RDS

gblwokeq  于 2023-06-05  发布在  Node.js
关注(0)|答案(1)|浏览(391)

我一直得到连接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()***

arknldoa

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

相关问题