我装的是客户端,其他同事装的也是一样,我的连服务端的时候出现这个错误,
同事的可以连上。
tnsnames.ora 里面的配置确定是没有错的!
服务只有一个OracleOraHome90ClientCache 这个。望大侠指点啊,谢谢

解决方案 »

  1.   

    有可能的原因
    1,检查是否是你的系统防火墙的原因
    2,注册表问题。
        进入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0将该环境变量ORACLE_SID设置为你的database的SID
      

  2.   

    我的防火墙的是关着的,
    我的注册表里没有ORACLE_SID的这个项啊!!
      

  3.   

    tnsping服务器看看,如果能通,就应该没有问题。不通,就重新安装客户端。
      

  4.   

    从网上看到的,希望对你有所帮助:1.确认sqlnet.ora文件中设置为操作系统验证  SQLNET.AUTHENTICATION_SERVICES= (NTS)2.查看windows对应的服务是否开启打开services查看,服务名oracleservice<SID>的运行状态,该服务的启动与关闭也可通过CML(命令行 COMMAND LINE)进行操作.SQL> $net start oracleserviceTEST2The OracleServiceTEST2 service is starting.
    The OracleServiceTEST2 service was started successfully.
    SQL> $net stop oracleserviceTEST2The OracleServiceTEST2 service is stopping...
    The OracleServiceTEST2 service was stopped successfully.注:WINNT中,在sqlplus中运行dos命令时,命令前加"$"符号3.查看本地环境变量ORACLE_SID,ORACLE_HOME是否正确设置C:Documents and SettingsAdministrator> set
    ALLUSERSPROFILE=C:Documents and SettingsAll Users
    APPDATA=C:Documents and SettingsAdministratorApplication Data
    ClusterLog=C:WINDOWSClustercluster.log
    CommonProgramFiles=C:Program FilesCommon FilesCOMPUTERNAME=LDY
    ComSpec=C:WINDOWSsystem32cmd.exe
    FP_NO_HOST_CHECK=NO
    HOMEDRIVE=C:
    HOMEPATH=Documents and SettingsAdministrator
    JSERV=F:oracleora92/Apache/Jserv/conf
    LOGONSERVER=LDY
    NUMBER_OF_PROCESSORS=1
    oracle_home=F:oracleora92
    oracle_sid=TEST1OS=Windows_NT....4.如果没有设置环境变量,请查看注册表中,HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE->HOME0中的ORACLE_SID,ORACLE_HOME项是否正确设置,如果oracle只有一个数据库,只需注册表中正确设置即可,无需设置环境变量.当然,如果像有多个数据库,需动态设置该环境变量C:Documents and SettingsAdministrator>set oracle_home=C:Documents and SettingsAdministrator>set oracle_sid=C:Documents and SettingsAdministrator>set
    ALLUSERSPROFILE=C:Documents and SettingsAll Users
    APPDATA=C:Documents and SettingsAdministratorApplication Data
    ClusterLog=C:WINDOWSClustercluster.log
    CommonProgramFiles=C:Program FilesCommon Files
    COMPUTERNAME=LDY
    ComSpec=C:WINDOWSsystem32cmd.exe
    FP_NO_HOST_CHECK=NO
    HOMEDRIVE=C:
    HOMEPATH=Documents and SettingsAdministrator
    JSERV=F:oracleora92/Apache/Jserv/conf
    LOGONSERVER=LDY
    NUMBER_OF_PROCESSORS=1
    OS=Windows_NT...无此变量C:Documents and SettingsAdministrator>sqlplus /nologSQL*Plus: Release 9.2.0.1.0 - Production on 星期四 2月 1 19:56:47 2007Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL> conn / as sysdba已连接。
    5.如果有多个数据库,若想默认连接某个数据库,可不管当前注册表的设置,手动设置环境变量ORACLE_SID即可请看实验:当前注册表ORACLE_SID=TEST1, C:Documents and SettingsAdministrator>set oracle_sid=
    C:Documents and SettingsAdministrator>sqlplus /nologSQL*Plus: Release 9.2.0.1.0 - Production on 星期四 2月 1 20:39:41 2007Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
    SQL> $net stop oracleserviceTEST2The OracleServiceTEST2 service is stopping...The OracleServiceTEST2 service was stopped successfully.
    SQL> $net stop oracleserviceTEST1The OracleServiceTEST1 service is stopping........The OracleServiceTEST1 service could not be stopped.
    SQL> $net start oracleserviceTEST1The OracleServiceTEST1 service is starting.The OracleServiceTEST1 service was started successfully.
    SQL> conn / as sysdba已连接到空闲例程。--注:当有注册设置时,即使没有设置环境变量,此时系统可按注册表设置进行TEST1的登录SQL> $net stop oracleserviceTEST1The OracleServiceTEST1 service is stopping...The OracleServiceTEST1 service was stopped successfully.
    SQL> conn / as sysdbaERROR:ORA-12560: TNS: 协议适配器错误警告: 您不再连接到 ORACLE。--注:当相关WINNT服务ORACLESERVICETEST1没有开启,用户将无法正常连接TEST1SQL> $net start oracleserviceTEST1The OracleServiceTEST1 service is starting.The OracleServiceTEST1 service was started successfully.
    SQL> conn / as sysdba已连接到空闲例程。
    SQL> exit已断开连接
    C:Documents and SettingsAdministrator>set oracle_sid=TEST2C:Documents and SettingsAdministrator>sqlplus /nologSQL*Plus: Release 9.2.0.1.0 - Production on 星期四 2月 1 20:45:29 2007Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
    SQL> conn / as sysdbaERROR:ORA-12560: TNS: 协议适配器错误--注:环境变量的设置影响用户登录数据库的选择,此时设置为TEST2,而NT服务ORACLESERVICEQTEST2没有开启,所以显示登录错误SQL> $NET START ORACLESERVICEQTEST2The OracleServiceTEST2 service is starting.The OracleServiceTEST2 service was started successfully.
    SQL> CONN / AS SYSDBA已连接到空闲例程。
      

  5.   

    tnsping服务器看看,如果能通,就应该没有问题。不通,就重新安装客户端。
      

  6.   

    在HOME0没有这个环境变量啊,
      

  7.   

    我TNSPING 了服务,提示的错误也是协议适配器出错,要重装客服端是吗?
      

  8.   

    你在TNSPING 之前先用
    set oracle_sid=你的连接字符串(SID)
    然后再试一下TNSPING 
      

  9.   

    tnsnames.ora 里面的配置确定是没有错的!
    ===================================
    再仔细检查一遍
      

  10.   

    你在TNSPING 之前先用 
    set oracle_sid=你的连接字符串(SID) 
    然后再试一下TNSPING 我试了,结果还是一样啊,tnsnames.ora 里面的配置确定是没有错的! 
    =================================== 
    再仔细检查一遍这里面的配置是直接考同事的,他的可以的,我的应该也是没有错
      

  11.   

    其实我本来装的是ORACLE的精简版,
    用PL/SQL DEV 是可以连上的,
    结果前天鬼迷心窍,去下了优化大师,弄了一下,就连不上,提示的意思应该是说 找不到原文件了,
    NND
      

  12.   

    对了,以前这个问题有人也遇到过,优化大师会删除ORACLE的一些正常文件
      

  13.   

    知道错哪里了,NND ,端口号被封了,没有跟我说,郁闷,