从另一台计算机访问sql数据库

时间:2016-10-26 13:52:54

标签: c# sql-server-2008

我有一个SQL Server 2008 Express数据库,目前数据库位于我的个人笔记本电脑上。我想从另一台属于同一局域网的计算机访问我的数据库。我正在使用Windows身份验证登录SQL Server。

我的连接字符串如下。

Data Source=.\sqlexpress;Initial Catalog=Project_Monitoring;Integrated Security=True

请说明如何进行上述要求的设定。提前谢谢。

2 个答案:

答案 0 :(得分:2)

您仍然需要允许SqlExpress允许远程连接。在托管SqlExpress进程的计算机上,您需要执行以下操作

  • 在要从远程计算机连接的SQL Server实例上启用远程连接。

  • 配置SQL Server以侦听静态端口    打开SQL Server Browser服务。

  • 配置防火墙以允许与SQL Server和SQL Server Browser服务相关的网络流量。

请参阅此处http://blog.citrix24.com/configure-sql-express-to-accept-remote-connections/

本文使用2012作为示例,但是对于任何版本的SqlExpress,此过程都是相同的

同时将远程计算机上的连接字符串更改为

Data Source=<hostcomputername>\sqlexpress:<configured-port>;Initial Catalog=Project_Monitoring;Integrated Security=True

答案 1 :(得分:1)

默认情况下,SQL Server Express不会添加防火墙规则,并且禁用了TCP协议。因此,您需要添加这些以便能够连接。

打开&#34; SQL Server配置管理器&#34;。在管理控制台中,打开&#34; SQL Server网络配置&#34;选项卡,协议,TCP / IP,启用。重新启动服务以应用更改。此外,您可能需要启用并启动&#34; SQL Server Browser&#34;服务于&#34; SQL Server服务&#34;。

打开具有高级安全性的Windows防火墙,入站规则,添加新规则,自定义,服务,应用于此服务:&#34; SQL Server(SQLEXPRESS)&#34;,确定,下一步...直到您可以命名并完成规则。为浏览器服务再次执行此操作。

服务器名称是远程计算机名称而不是.,连接字符串的其余部分保持不变。

请注意,如果远程计算机上的帐户不受信任,您可能会遇到身份验证问题;例如,如果您不在域中。