有两台电脑,都装有SQL,我在其中一台上建了一个数据库做为"服务器",IP:16.84.192.1
现在我想在另一台电脑(16.84.192.6)上用"服务器"上的数据库建立数据源,
我是这样做的,添加数据源,输入了数据源名称、描述,在“您想连接哪一个SQL Server? 服务器:”中,输入IP:16.84.192.1
然后下一步,再下一步,就出错了:
连接失败:
SQL state:'01000'
SQL server错误:10065
[Microsoft][ODBC SQL Server Driver][ICP/IP Sockets]Connection Open(Connect())
连接失败:
SQL server错误:17
[Microsoft][ODBC SQL Server Driver][ICP/IP Sockets]SQL Server不存在或访问被拒绝。网络是通的
请大家帮我看看哪里出问题了?

解决方案 »

  1.   

    应该是两台计算机不能连接。本文收录了不能连接SQL Server ,报 The  Network  Adapter  could  not  establish  the  connection  异常的所有遇到过的原因,并提供了图形化的排查向导。 
    不过根据经验,没有升级到SP4的可能性最高。可以直接看第6部分。 常见的错误为: The  Network  Adapter  could  not  establish  the  connection  
    1 检查SQL SERVER 是否允许远程访问. 
    具体步骤: 
      1)打开"企业管理器",打开控制台根目录>SQL Server 组>数据库 
      2)在相应"数据库"上单击右键,选择"属性" 
      3)选择"连接"选项卡,检查"远程服务器连接"下,RPC服务是否选择. 
    2 使用telnet IP地址 1433,系统是否提示连接出错 
    比如 telnet 127.0.0.1 1433 
    如果出现黑屏,这端口正常 
    如系统提示出错 
      检查是否防火墙屏蔽了SQL SERVER 或 java IDE 的网络访问端口 
      如果是,关闭防火墙,重新启动SQL SERVER和java IDE,进行测试, 
      如果系统仍提示上述错误,尝试下列步骤 
    3 检查SQL SERVER 端口号及是否启用了TCP/IP协议 
    具体步骤: 
      1)打开"企业管理器",打开控制台根目录>SQL Server 组>数据库 
      2)在相应"数据库"上单击右键,选择"属性" 
      3)选择"常规"选项卡,点击"网络配置",如启用的协议中无"TCP/IP协议"将其加入 
      4)选择"TCP/IP协议",点击"属性",检查其端口号是否为1433 
     5)如端口号为1433将其修改为其它端口号,修改jdbc连接语句,将端口号同样改为新启用的端口号,如jdbc:microsoft:sqlserver://server_name:1400(假设新端口号为 1400) 4 以下的方法你每种的去试试: 
      1)检查一下sql server的connection有没有full. 
      2)如果是认证的问题.  可到sql enterprice manager->指定server->内容->安全性.  把验证改为 SQL server 及 windows. 
      3)点选属性检查一下port是否正确. 
      4)执行%MSSQL_HOME%\80\Tools\Binn\SVRNETCN.exe 
        把TCP/IP启用. 
      5)关掉防火墙. 
      6)把SQL server update到sp4: 
      http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=8E2DFC8D-C20E-4446-99A9-B7F0213F8BC5 
      经我验证,一般升级到sp4就好用了! 
      注意升级的方法,不是双击运行就可以了,这个SP4是解压缩程序,你要指定一个目录,推荐c:\,解压缩后,需要转到那个目录运行里面的setup.bat才是真正的安装。不知道为何微软不直接调用那个。搞不懂!!!   8) 在 SQL Server 2005 里面,如果出现 
      到主机  的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect 
      sqlserver2005默认情况下是禁用了tcp/ip连接。启动tcp/ip连接的方法, 
      打开 \Microsoft SQL Server 2005\配置工具\目录下的SQL Server Configuration Manager,选择mssqlserver协议, 
      然后右边窗口有个tcp/ip协议,然后启动它,把sqlserver服务停了,然后在启动。问题就解决了 另外注意windows的防火墙,也需要关掉
      

  2.   

    IP:16.84.192.1上的MSSQL是否有命名实例
    有的话 输入16.84.192.1\实例名称 试试
      

  3.   

    一般说来,有以下几种可能性:
      1、SQL Server名称或IP地址拼写有误
      2、服务器端网络配置有误
      3、客户端网络配置有误
      要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因。
      首先,检查网络物理连接
      ping <服务器IP地址/服务器名称>
      如果 ping <服务器IP地址> 不成功,说明物理连接有问题,这时候要检查硬件设备,如网卡,HUB,路由器等。
      还有一种可能是由于客户端和服务器之间安装有防火墙软件造成的,比如 ISA Server。防火墙软件可能会屏蔽对 ping,telnet 等的响应
      因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口。
      如果ping <服务器IP地址> 成功而,ping <服务器名称> 失败
      则说明名字解析有问题,这时候要检查 DNS 服务是否正常。
      有时候客户端和服务器不在同一个局域网里面,这时候很可能无法直接使用服务器名称来标识该服务器,这时候我们可以使用HOSTS文件来进行名字解析,
      具体的方法是:
      1、使用记事本打开HOSTS文件(一般情况下位于C:\WINNT\system32\drivers\etc)。
      添加一条IP地址与服务器名称的对应记录,如:
      172.168.10.24 myserver
      2、或在 SQL Server 的客户端网络实用工具里面进行配置,后面会有详细说明。
      其次,使用 telnet 命令检查SQL Server服务器工作状态
      telnet <服务器IP地址> 1433
      如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接
      如果命令返回"无法打开连接"的错误信息,则说明服务器端没有启动 SQL Server 服务,
      也可能服务器端没启用 TCP/IP 协议,或者服务器端没有在 SQL Server 默认的端口1433上监听。
      接着,我们要到服务器上检查服务器端的网络配置,检查是否启用了命名管道。是否启用了 TCP/IP 协议等等
      可以利用 SQL Server 自带的服务器网络使用工具来进行检查。
      点击:程序 -- Microsoft SQL Server -- 服务器网络使用工具
      打开该工具后,在"常规"中可以看到服务器启用了哪些协议。
      一般而言,我们启用命名管道以及 TCP/IP 协议。
      点中 TCP/IP 协议,选择"属性",我们可以来检查 SQK Server 服务默认端口的设置
      一般而言,我们使用 SQL Server 默认的1433端口。如果选中"隐藏服务器",则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接。
      接下来我们要到客户端检查客户端的网络配置
      我们同样可以利用 SQL Server 自带的客户端网络使用工具来进行检查,
      所不同的是这次是在客户端来运行这个工具。
      点击:程序 -- Microsoft SQL Server -- 客户端网络使用工具
    打开该工具后,在"常规"项中,可以看到客户端启用了哪些协议。
      一般而言,我们同样需要启用命名管道以及 TCP/IP 协议。
      点击 TCP/IP 协议,选择"属性",可以检查客户端默认连接端口的设置,该端口必须与服务器一致。
      单击"别名"选项卡,还可以为服务器配置别名。服务器的别名是用来连接的名称,
      连接参数中的服务器是真正的服务器名称,两者可以相同或不同。别名的设置与使用HOSTS文件有相似之处。 
      

  4.   

    连接失败: 
    SQL state:'01000' 
    SQL server错误:1326
    [Microsoft][ODBC SQL Server Driver][DBNETLIB]Connection Open(Connect()) 
    连接失败:
    SQLstate:'8001' 
    SQL server错误:17 
    [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server不存在或访问被拒绝。
    网络是通的,错误是这样的
      

  5.   

    网络库是否选择的是TCP/IP。1433端口(实际连接连接端口)是否被屏蔽了。如果是WIN2003+SQL2000  ,需要装SQL SP3或是 SP4。下面是一个建数据源的批处理内容,也许会给你点帮助。odbcconf CONFIGSYSDSN "SQL Server" "DSN=gl|SERVER=11.13.8.32"
    REG DELETE "HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo" /v "11.13.8.32" /f
    REG ADD "HKLM\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo" /v "11.13.8.32" /t "REG_SZ" /d "DBMSSOCN,11.13.8.32,3366" /f我上面的端口就改为3366了。
      

  6.   

    我试来试去还是不行呀,
    是不是我的SQL安装有问,我装的是SQL2000个人版,
    还是那个1433端口是打不开,能不能换一个端口呀
      

  7.   

     服务器网络实用工具 ——>点中TCP/IP——>点 下面的属性 输入你改的端口号。然后重起服务就行了。不过个人不推荐使用个人版,还是装企业版打SP4是正路。