[sql server] [windows2003] 解决1433端口无法打开的问题

时间:2024-03-31 14:47:52

实例说明:
公司客户XX公司在换了数据库服务器后(操作系统为:WINDOWS SERVER 2003),客户端软件(C6)一直无法连接到数据库服务器,但服务器端软件(C6)可正常连接。

  1. 检查公司LAN是否正常,PING服务器名或IP地址一切正常。
  2. 在服务器上 打开开始菜单->程序->Microsoft SQL Server->服务器网络实用工具,看启用的协议里有tcp/ip协议启用.
  3. 建立别名、把服务器名字换成IP地址等办法全部用上,但始终和数据库无法连接。
  4. 此时怀疑是否SQL SERVER版本不同导致,在服务器端和客户机上装同一版本的SQL SERVER,直接用SQL客户端连接SQL服务器端,结果还是一样。
  5. 用WINDOWS自代的ODBC连接SQL服务器一样不行。

解决方法:
想尽一切办法无果后,开始怀疑SQL SERVER通信端口是否1433,并工作正常。
于是用以下操作方法开始执行:

第一步、打开SQL SERVER服务网络实用工具。

[sql server] [windows2003] 解决1433端口无法打开的问题

[sql server] [windows2003] 解决1433端口无法打开的问题

SQL SERVER服务网络实用工具默认端口是1433,但1433端口是否真的被打开呢,于是执行第二步操作。
第二步、分别用二个DOS工具来查看1433端口。

1、在DOS下执行 “TELNET 电脑名或IP地址 1433”。

[sql server] [windows2003] 解决1433端口无法打开的问题

能经过1433端口进行连接的界面

[sql server] [windows2003] 解决1433端口无法打开的问题

2、为了再次证实,用“netstat –an”查看1433端口是否打开。
(Netstat –an:显示所有连接和监听的端口并以数字的行式显示地址和端口号。)如果1433打开,刚下图有显示监听的1433端口。

[sql server] [windows2003] 解决1433端口无法打开的问题

第三步、现确定是1433端口没有打开,于是下载

  1. sql server 2000 sp3a补丁安装

下载地址:

http://www.microsoft.com/downloads/details.aspx?FamilyID=90dcd52c-0488-4e46-afbf-acace5369fa3&DisplayLang=zh-cn#filelist

WINDOWS SERVER 2003 SP1补丁。

  1. 在WINDOWS自代的防火墙中开放1433端口(如没有安装SP1补丁,防火墙无法编辑)。

按以上顺序步骤操作完成以后再用上面二个方法测试,测试结果1433打开。再用C6或SQL客户端连接,一切正常。

说明:

    • Microsoft Windows Server 2003 使用时存在已知的安全弱点。为了减少计算机被某些病毒的攻击,Microsoft SQL Server 2000,MSDE 或 两者的 TCP/IP 和 UDP 网络端口被禁用。在没有安装SP1补丁时,它自代的防火墙会关闭所有的通信端口,而且用户无法自行打开端口,只有安装SP1补丁后,防火墙才处于可修改状态,注意此处是可修改,但用户没有自行打开某个端口时,所有端口还是处于关闭状态。
    TCP/IP 端口是当接收来自 TCP/IP 套接字客户端的连接时,服务器将在该端口上监听。SQL默认值为 1433。