testingSQL Server 2005正在侦听FreeTDS

testingSQL Server 2005侦听IP和端口的最佳方法是什么?

一些背景:我试图使用freetds连接一个Unix机箱到SQL Server 2005。 但是tsql总是告诉我“Adaptive Server不可用或不存在”。 我试图找出是否问题出在我的SQL Server或FreeTDS的configuration。 (SQL服务器当前被用作运行一些.net网站的服务器的数据源;所以我倾向于在UNIX端的问题)

    您可以尝试在端口1433远程login您的服务器。它是SQL Server正在侦听的端口:

    telnet MySQLServerAddress 1433 

    输出应该是

      Trying 111.222.111.222 ... (example) Connected to MySQLServerAddress. 

    如果您收到“连接被拒绝”错误消息,说明您的networking通信有问题(服务器上的防火墙,SQL Server端口已从默认更改…)

    连接时要退出telnet,请input转义字符Ctrl-] 。 一旦进入命令模式,telnet可以通过“退出”命令quit

    如果基本networking通信正在工作,则可以使用“ tssql ”testing访问数据库服务器:

    它可以用两种方式运行,一种使用freetds.conf ,另一种使用地址/主机名和端口直接连接freetds.conf 。 尝试使用主机和端口先连接:

     $ cd src/apps $ TDSVER=7.0 ./tsql -H SQLServerHost -p 1433 -U user 

    如果您收到“login失败”,那么您有一个身份validation问题。

    如果您收到类似的消息

    消息。 编号:18450严重级别:14状态:1login失败 – 用户:loginid原因:未定义为可信SQL Server连接的有效用户

    SQL Server只接受“域”login。 这仅适用于Microsoft SQL Server,您需要让DBAvalidation是否允许“服务器login”,或使用域login。

    如果您收到提示,请使用dataserver名称(使用freetds.conf)来尝试tsql:

     $ ./tsql -S SQLServerHost -U user 

    如果失败, freetds.conf或者找不到正确的freetds.conf文件,或者文件中有错误。

    我遇到了一个非常类似的问题。 我花了几个小时才弄明白了什么是错误的,但最终却发现我试图连接到一个命名实例,而标准的1433端口是错误的:

    你连接到一个命名实例的SQL Server? 如果这样看到这里:

    http://support.microsoft.com/kb/265808