使用C#从远程计算机测试SQL Server的连接性

时间:2013-10-07 09:05:57

标签: c# sql-server database-connectivity

我需要测试SQL Server与远程计算机的连接性,

我有SQL服务器名称而不是IP地址。

如何检查此连接。 我如何知道通信启用的端口。

3 个答案:

答案 0 :(得分:0)

您必须知道Sql server服务在远程服务器上侦听的端口。默认端口是1433。 如果要测试服务器上是否打开了端口,则可以尝试Telnet ping。

打开命令提示符:

C:\> Telnet <YourServername> <portno.>

如果它已打开,则屏幕将立即变为空或返回错误。

答案 1 :(得分:0)

你需要尝试连接,没有办法在没有直接询问的情况下找到有人正在收听的端口,嘿,这个端口上有人吗?

以下是从C#开始的方法:

TcpClient tc = null;
try
{
    tc = new TcpClient("MyAddress", MyPort);
    // port is open
} 
catch(SocketException se) 
{
    // port is not open, or host is not reachable
}
finally
{
   tc.Close();
}

答案 2 :(得分:0)

您还需要知道服务器的IP地址或主机名以及TCP端口。仅实例名称无济于事,因为它们不会在网络上公布。如果您具有服务器的名称或IP以及SQL Server实例名称,则只需尝试使用具有适当连接字符串的SqlConnection进行连接。如果你能连接,一切都很好。