我有一台 AWS 服务器(带有 IIS 的 MS SQL SERVER EXPRESS 2008 R2),其弹性 IP 为 54.214.8.111,安全组配置了 HTTP、MS SQL 和 FTP,我可以使用亚马逊在控制台中提供的 rdp 文件连接到远程虚拟机。
但是,当我尝试通过 Visual Studio 连接以测试数据库是否正常工作时,它给出了“用户‘dbuser’登录失败”错误。我的 SQL Server(当然是在服务器端)上有一个名为 dbuser 的用户,具有完全访问权限等。尽管有所有指南和帮助文档,我也无法连接到服务器上的 ftp。似乎有什么东西阻止了我的连接。我在多台计算机上尝试了同样的事情。
除了我怀疑服务器实例之外,一切似乎都配置正确。
有人能帮忙吗?PS:我对 Web 开发还很陌生,这是我的第一个 AWS EC2 服务器。
答案1
虽然这篇文章是一年前发布的,但我还是在这里为未来的访问者留下了一个解决方案。
- 远程连接到 AWS 实例
- 运行 SQL Management Studio,通过 Windows Auth 连接到数据库。
- 右键单击左侧窗格中的服务器名称(根服务器),单击属性-> 安全
- 在顶部选择“SQL Server 和 Windows 身份验证模式”。单击“确定”。
那么就尝试一下吧。它会起作用的。
希望这可以帮助。
答案2
不将您的 MSSQL 端口暴露给互联网。这样做只会让您遭受黑客攻击。
我针对你的 IP 运行了 nmap,结果显示你的 MSSQL 端口确实是打开的:
~ nmap -p 1433 54.214.8.111
Starting Nmap 6.25 ( http://nmap.org ) at 2013-04-16 14:39 CDT
Nmap scan report for ec2-54-214-8-111.us-west-2.compute.amazonaws.com (54.214.8.111)
Host is up (0.085s latency).
PORT STATE SERVICE
1433/tcp open ms-sql-s
Nmap done: 1 IP address (1 host up) scanned in 2.00 seconds
因此,您的问题似乎与凭证不当有关。请验证您的数据库用户帐户具有适当的权限进行远程连接,并且使用了正确的密码。