【发布时间】:2019-07-05 14:25:54
【问题描述】:
我正在将网站从专用服务器迁移到 AWS。
首先我要传输数据库(sql server express)。
我已经设置了一个 AWS RDS Sql Express 数据库 - 并且可以从我的 PC 连接到它。但是,当我更新当前服务器上的数据库连接字符串 - 指向 AWS RDS Sql Express 时,我收到错误:
[Win32Exception (0x80004005): 由于目标机器主动拒绝,无法建立连接]
[SqlException (0x80131904):建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:TCP Provider,错误:0 - 由于目标机器主动拒绝,无法建立连接。)]
RDS 所属的安全组开放了以下端口:
一个 IP,是我的本地 PC - 另一个是我的专用服务器 IP。
知道为什么我的本地 PC 会连接到 AWS RDS Sql Express 实例,但我的专用服务器连接被拒绝?
有什么方法可以找到我的服务器尝试连接到 AWS 的 IP 地址(如果它不是面向公众的)?
感谢您的建议。
标记
【问题讨论】:
-
在
Sql Server Configuration Manager检查是否为所有客户端协议启用TCP/IP -
嗨 - 在 AWS RDS 上 - 您无法直接访问 Sql Server 实例 - 只能通过 SSMS。我可以在防火墙上打开端口 - 你是这个意思吗?
-
不,我不是这个意思。我不知道 AWS RDS,但通常你必须在你的 sql 服务器上启用 TCP/IP 协议。对于 sql-server express,默认情况下它可能是关闭的。我不认为你可以用 SSMS 改变它
-
如果我理解正确,您的本地电脑可以连接到数据库,而数据库不在您的本地电脑上。所以在这种情况下 TCP/IP 设置正确,你可以忽略我的 cmets
-
感谢您的帮助。在我的专用服务器防火墙上,443 端口传出是打开的。
标签: .net sql-server amazon-web-services amazon-ec2 iis-8