诊断与 SQL Server 的连接

rus*_*sds 1 sql-server connection odbc

我正在尝试创建到 SQL Server 的 ODBC 连接,但是当我这样做时,出现错误:

Connection failed:
SQLState: '01000'
SQL Server Error: 10060
[Microsoft][ODBC_SQL Server Driver][TCP/IP Sockets] COnnectionOpen (Connect()).
Connection failed:
SQLState: '08001'
SQL Server Error: 17
[Microsoft][ODBC_SQL Server Driver][TCP/IP Sockets] SQL Server does not exist or access denied.
Run Code Online (Sandbox Code Playgroud)

这是我尝试过的:

  1. 不是防火墙问题:尝试关闭 SQL Server 上的防火墙,并关闭客户端。也能够从客户端 telnet 1433 并且工作正常。
  2. 不是访问问题:我可以从许多不同的计算机登录,包括使用我在客户端上使用的帐户(使用 SQL Server 身份验证)的 SQL Server 本身
  3. 我可以 ping 主机名和 IP 地址。(我都试过)

我唯一能想到的是客户端计算机是 windows server 2003,并且具有各种角色设置:

  • 文件服务器
  • 应用服务器
  • 终端服务器
  • 域控制器
  • DNS服务器

我不知道为什么要设置这些服务,但目前我无法关闭它们。是否是其中任何一个,如果是,是否有办法禁用它们的任何方面,这可能会阻塞 SQL。

任何建议真的很感激!

rus*_*sds 5

发现问题。出于某种原因,即使客户端上没有使用 SQL,它也已安装,通过转到所有程序 -> Microsoft SQL Server -> 客户端网络实用程序,我发现协议 TCP/IP 正在使用端口 4717。我不知道为什么要使用该端口,甚至更进一步,我不确定为什么它会很重要-我只是设置了 odbc 连接,而根本不使用 sql server(在客户端上)。无论哪种方式,我都将其更改为典型端口 (1433),并且像繁荣一样,ODBC 连接工作起来很迷人!