4

我有一个控制台应用程序,它与 Entity Framework 有 Amazon rds 连接。它在我的本地 PC 上运行良好。但是当我在 Amazon EC2 中运行我的应用程序时,它无法连接到我的 Amazon RDS 数据库并显示“底层提供商在打开时失败”。我的实体框架的连接字符串是...

<add name="MyEntities" connectionString="metadata=res://*/YhFinModel.csdl|res://*/YhFinModel.ssdl|res://*/YhFinModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=datasourcename,portnumber;initial catalog=databasename;persist security info=True;user id=userid;password=password;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

提前致谢。

4

3 回答 3

12

你看过你的安全组吗?我认为您将需要添加您正在使用的 EC2 安全组来访问您的 RDS 实例的端口。

于 2013-05-08T18:18:59.310 回答
3

如果您的 EC2 实例和 RDS 实例位于不同的区域,则必须转到 RDS 安全组并输入 EC2 实例的外部IP 作为 CIDR/IP。至少这对我有用。

于 2013-10-13T20:53:18.510 回答
0

这是一个稍新的版本,需要它才能正常工作。单击 RDS 仪表板。选择您的 RDS 实例->单击详细信息图标->单击附加所选 RDS 实例的安全组 URL。这会将您置于 EC2 的安全组设置中。选择安全组后,单击入站选项卡。在这里您需要可能修改或创建新规则(MS SQL、TCP、端口(例如 1433),然后是允许请求的 IP 地址/IP 地址范围。您可以设置所有 IP 地址以确认它有效,然后收紧根据实例和/或测试环境 IP 地址提高 IP 地址范围的安全性。

祝你好运。

于 2016-08-17T19:09:32.767 回答