我刚安装了SQL Server 2012和SQL Server 2008 R2
我可以在本地连接到它没问题
但是当我尝试通过LAN上的另一台PC连接时,我会暂停:
超时已过期。完成之前已经过了超时时间 操作或服务器没有响应。
这是代码
Dim queryString = "SELECT * FROM cities"
Using connection As New SqlConnection("data source=PCBOX\MSSERVER;initial catalog=MYDB;persist security info=True;user id=ABC;password=123;Connection Timeout=30")
Dim command As New SqlCommand(queryString, connection)
connection.Open()
Dim reader As SqlDataReader = command.ExecuteReader()
While reader.Read()
Console.WriteLine(String.Format("{0}, {1}", reader(0), reader(1)))
End While
End Using
Dim a = New MYDBEntities
Dim b = a.Cities.ToList
现在有一些有趣的说明:
问题是什么?
我试过了:
建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应。
答案 0 :(得分:3)
我发现这个链接看起来很像你的问题。单击here如果防火墙未记录丢弃的连接,您可能需要尝试打开防火墙上的端口。
答案 1 :(得分:2)
由于您将SQL Server 2012与SQL Server 2008 R2一起安装,我将尝试在不使用默认端口的情况下进行连接。
要查找SQL Server 2012正在使用的端口,请转到SQL“客户端11协议”部分中的SQL Server配置管理器。查看TCP / IP协议上端口的属性。
在实例名称后面的代码中添加逗号而不是端口号。
data source=PCBOX\MSSERVER,1434;
这可能是除了端口之外的东西。