2010-06-03 78 views
2

我有一个使用本地Sql Server数据库本地开发的网站。我也有一台Web主机,为我的网站提供一个Sql Server数据库。现在我想部署应用程序,并且希望能够通过Visual Studio中的服务器资源管理器来管理远程数据库。我有应用程序中使用的连接字符串,它适用于向控件等添加数据源,但我不知道是否有任何方法使用它来连接服务器资源管理器中的数据库,以便我可以添加表等。我已经读过,你应该能够这个,而不是使用SQL Server管理工作室,但我没有读到任何有关如何连接到它的远程数据库。在Visual Studio或Sql Server Management Studio中连接到Web主机上的数据库

我到目前为止试过的是这样的:我已经选择在服务器资源管理器中添加数据库。这首先弹出一个对话框,我选择Sql Server。然后我得到一个对话框,我可以设置服务器名称(我尝试使用下面的连接字符串中的IP地址)和身份验证(我选择Sql Server身份验证,用户名和密码从下面)。但是当我测试连接失败时。

这里的连接字符串,用于在应用程序中的数据源(很明显,不同的用户名和密码)时工作正常:

任何帮助表示赞赏!

编辑:

嗯,我所做的一切,通过以下lewiguez现在建议,但它并没有任何区别。我不能相信这应该是这么辛苦......我一直在Sql Server Management Studio中收到此错误消息:

建立与SQL Server的连接时发生网络相关或实例特定的错误。服务器未找到或无法访问。验证实例名称是否正确,并将SQL Server配置为允许远程连接。 (provider:命名管道提供程序,error:40 - 无法打开到SQL Server的连接)(微软SQL Server,错误:53)

回答

2

这是我遵循与远程数据库的工作过程:

  1. 在VS 2008的服务器 浏览器选项卡下,“数据 连接”右键单击,然后单击“添加 连接”
  2. 更改数据源,以 “Microsoft SQL Server的”
  3. 在您的完全合格的将 “服务器名称”(无论是IP地址,域名等),选择“Sql Server Authentication”,并输入数据库用户的“用户 名称”和“密码”
  4. 选择您想要的数据库连接到在“选择或输入数据库名称”
  5. 命中“测试连接”来测试,然后“确定”,通过扩大连接,然后接受
  6. 你应该能够在这一点上与数据库进行交互“表格”文件夹。例如,右键单击Tables文件夹,将在对话框中显示“添加表格”选项。右击现有的表格会弹出“打开表格定义”选项,您可以在其中更改任何列等。

如果你没有达到这一点(听起来你不是),我建议你检查你使用的任何机器的Sql Server连接。

我通常通过进入Management Studio并使用任何凭据尝试使用来执行此操作。如果它们不起作用,请确保它们实际上被添加为Sql Server用户和数据库用户(它们必须都是)。

此外,我会检查在Sql Server表面区域配置管理器。您必须允许TCP连接,并且您必须设置为允许来自远程主机的Sql Server身份验证连接。如果所有设置完成,但仍然无法连接,请仔细检查以确保防火墙允许连接Sql Server。默认端口是1433.

此外,如果您可以连接,但无法写入任何内容,请仔细检查您的表的权限。希望这可以帮助!

+0

对,我到达第5项,测试连接失败。我在Management Studio中尝试了相同的结果。问题是,我之前已经能够在我之前的计算机上连接到Web主机上的同一个数据库。所以我想知道的是,所有这些关于“添加凭据作为Sql Server用户”等(你的意思是我的密码和用户名?),如果你的意思是在Web主机Sql Server数据库上,那么是的,因为他们以前工作过。否则,请你澄清一下吗? – Anders 2010-06-03 13:54:04

+0

另外,允许TCP连接和身份验证连接的其他内容是否意味着在本地计算机上?因为我不明白这是如何工作的......当然,必须在Web主机上的数据库上设置权限?还是我误解了一些关于Sql Server的工作原理......?我对数据库开发相当陌生。另外,在哪里可以找到Sql Server表面区域配置管理器? – Anders 2010-06-03 13:55:00

+0

顺便说一句,这里是我得到的错误消息(都来自Server Explorer和Management Studio): 建立到SQL Server的连接时发生网络相关或实例特定的错误。服务器未找到或无法访问。验证实例名称是否正确,并将SQL Server配置为允许远程连接。 (提供程序:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)(Microsoft SQL Server,错误:53) 同样,关于允许远程连接的东西,不会在Web主机上? – Anders 2010-06-03 13:56:57

2

我终于明白了这个问题:因为我怀疑我自己安装的设置不是问题,而是我的Web主机上安装Sql Server的设置。事实上,我在我的网络主机上的控制面板中找到了一个位置,我可以为我的IP地址设置一个例外,这样我的IP将被授予访问S33服务器的端口1433的权限,否则由于安全原因。

我一直都没有找到关于这方面的信息,所有在互联网上,我觉得很奇怪。我所能找到的所有信息都必须在您自己的本地安装Sql Server上更改这些设置。但是我确定有很多人喜欢我使用Web主机来部署他们的网站,然后这些信息似乎并不适用。 (也许除了TCP设置,我认为必须设置,并在这里有详细的信息:http://www.linglom.com/2009/03/28/enable-remote-connection-on-sql-server-2008-express/

希望这可以帮助像我一样的其他人使用虚拟主机。至少,在Management Studio和Visual Studio Server Explorer中,至少对我来说工作正常。

相关问题