出于开发目的,无法从本地主机连接到 AWS RDS Postgresql

Posted

技术标签:

【中文标题】出于开发目的,无法从本地主机连接到 AWS RDS Postgresql【英文标题】:Cannot connect to AWS RDS Postgresql from local host for dev purposes 【发布时间】:2021-05-07 08:34:51 【问题描述】:

我正在开发一个应用程序来学习 AWS。我使用 react 和 nodejs 作为后端。我创建了 AWS RDS Postgresql 数据库,并能够使用 pgadmin 和本地主机上的 nodejs 连接到它(我假设它已连接 bc pgAdmin 在 localhost 端口运行时显示 2 个连接)。使用 pgAdmin,我可以创建表并使用 SQL 查询将数据放入表中。

但是,我无法使用带有代理和不带代理的 react 和/或 nodejs 从数据库发出 Post 或 Get 请求。似乎它不允许它解决安全问题?我还将安全组设置为 public 和 All Access。

是否可以使用代理或不使用代理从本地主机向数据库发出 Post 请求和 Get 请求?到目前为止,它要么给我 404 Not Found 要么 ERR_Connection Refused。

如果不是,那么如何在自己的计算机上使用 AWS RDS 开发应用程序?

【问题讨论】:

【参考方案1】:

我在使用 mysql 时遇到了类似的问题。这解决了我的问题。 默认情况下,AWS 不允许其 VPC 之外的其他服务连接到数据库实例。启用远程访问,

转到您的 RDS 选项卡并单击数据库实例 在安全下,点击Vpc security group(点击下方有活动的那个) 您现在应该在另一个页面上。默认情况下应选择安全组。 点击Actions下拉菜单并点击Edit Inbound rules 添加新规则。 type应该是All trafficsource应该是custom,然后你可以输入你本地机器的IP地址。如果您不确定您的 IP 是什么或者您的 IP 不是静态的,您可以选择任何地方。

【讨论】:

非常感谢。我确实更改了入站规则,但显然我在那里做错了。现在,我按照您的指示进行了操作,一切正常。谢谢!

以上是关于出于开发目的,无法从本地主机连接到 AWS RDS Postgresql的主要内容,如果未能解决你的问题,请参考以下文章

JPA 无法从 Beanstalk 连接到 AWS RDS,但它可以在本地工作

AWS Lambda 无法连接到 RDS 实例,但我可以在本地连接?

AWS:无法从我的机器连接到 RDS 数据库

从 MySQL 客户端通过 AWS 堡垒主机连接到 MySQL RDS 实例

本地 Laravel 环境未连接到 AWS RDS 数据库

当我将 Spring Boot 应用程序部署到 AWS Elastic Beanstalk 并且无法从本地 Spring Boot 连接到 RDS 时出现 502 错误网关