如何更改Amazon RDS的可公开访问选项?

Ron*_*oss 22 amazon-web-services amazon-rds

当您创建一个新的amazon rds实例时,您可以为"可公开访问"选项选择true/false,是否有办法为现有实例更改此选项?

Bre*_*ett 28

要查找“可公开访问”设置,请选择实例,单击“修改”,然后单击“其他配置” 。这将展开,您将看到一个“公开访问”选项。

在此输入图像描述


mda*_*man 19

编辑:是的,现在可以将"公共可访问"属性从"否"更改为"是".(反之亦然)万岁!

旧答案留在这里用于历史目的:不.

这会很好,嗯?作为一种解决方法,您最好的选择如下:

  • 创建实例的快照.
  • 使用Publicly Accessible选项从此快照启动新实例.

证据:

  • John G在这篇文章中的外交使他无法像我一样写"不",但他的答案是"你可以创建当前RDS数据库的快照并使用可公开访问的选项启动它".很明显他提供了解决方法,因为直接解决方案不可用.

  • 右键单击实例并选择"修改"以查找此选项 (5认同)
  • 警告:Aurora **无服务器** 目前不支持此功能,您必须从 VPC 内连接到它。 (2认同)

Gat*_*tos 7

我偶然发现了同样的答案.可悲的是,看起来10个月之后答案仍然是"不" - 您无法将现有数据库更改为公开可用.

但是 - 你可以近距离接触......即使它不是公开的,它也适用于你在同一个VPC中启动的EC2实例.您可以通过EC2实例从您的计算机到该数据库设置SSH隧道 - 有效地让您无需从快照重新启动它即可访问该实例.

你没有指定你的计算机的操作系统,所以我很方便地假设你的...

首先,启动EC2实例,通过安全组授予其访问RDS实例的权限,确保您可以登录该EC2实例,并确保可以从该EC2实例访问RDS数据库.如果其中任何一个失败,其余部分将无效.

接下来,设置隧道:

ssh -v -N -L 1234:rds.endpoint:3306 yourec2username@your.ec2.host
Run Code Online (Sandbox Code Playgroud)

其中rds.endpoint是RDS实例的URL,your.ec2.host是EC2实例的主机名,yourec2username是EC2主机上的用户名.

然后,您可以使用连接到RDS实例

mysql -p -u dbuser -h 127.0.0.1 -P 1234 dbname --password=dbpassword
Run Code Online (Sandbox Code Playgroud)

希望能帮助下一个偶然发现的人......


Yas*_*era 5

这是一个老问题,但这也许可以帮助某人。

不需要删除和恢复数据库,只需在AWS控制台中打开数据库实例,点击Modify查找Additional connectivity configuration,后面就只有Publicly accessible和两个选项了Not publicly accessible。选择您的选项,等待几秒钟,修改将应用到您的实例,尤里卡,它完成了。

有关更多信息,请查看官方文档


Rat*_*rma 0

首先找出您所在的VPC。

如果您希望将 RDS 实例设置为可公开访问,则必须在 DNS 主机和解析中启用 VPC 属性。

您可以使用将解析PubliclyAccessible为公共 IP 地址的参数来设置此项。

这是来自 AWS 文档:

Amazon RDS 支持两种 VPC 平台:EC2-VPC 和 EC2-Classic。EC2-VPC 平台具有默认 VPC,所有新数据库实例均在其中创建,除非您另行指定。EC2-Classic 平台没有默认 VPC,但与任一平台一样,您可以创建自己的 VPC 并指定数据库实例位于该 VPC 中。

  • 当然,您引用的内容是真实的。但它们对于回答问题没有帮助。 (3认同)