SQL Server 不存在或访问被拒绝

来源:互联网 发布:知字代表什么生肖 编辑:程序博客网 时间:2024/04/28 00:11
一."SQL       Server       不存在或访问被拒绝"        
           
      这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多.        
           
      一般说来,有以下几种可能性:        
           
      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文件有相似之处.        
           
           
      通过以上几个方面的检查,基本上可以排除第一种错误.        
  检查你的SQL有没有打补丁,没有的话要打上补丁,检查的方法是在查询分析器中运行:        
          select       @@version        
          如果出来的版本号是8.00.2039以下,则表明你未安装sp4的补丁,要装上.        
           
      SQL补丁下载:        
      全部补丁的位置(在下载页的中间部分,可以选择语言,以下载和sql       server实例语言对应的补丁)        
      http://www.microsoft.com/downloads/details.aspx?FamilyId=8E2DFC8D-C20E-4446-99A9-B7F0213F8BC5&displaylang=zh-cn        
      应该安装的是        
      http://download.microsoft.com/download/9/b/f/9bff6646-2cdb-4069-ada0-548be9cb9338/SQL2000-KB884525-SP4-x86-CHS.EXE        
      注意下载后,执行的时候是解压,要在解压后的目录中执行setup.bat才是真正的安装        
           
           
      如果你的操作系统是xp,那么在安装xp       sp2后,不管以前是否安装过sql       sp4,都要再安装一次,并且在防火墙中开启1433端口,否则无法被其他电脑访问