从网上看到的,希望对你有所帮助: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已连接到空闲例程。
tnsping服务器看看,如果能通,就应该没有问题。不通,就重新安装客户端。
在HOME0没有这个环境变量啊,
我TNSPING 了服务,提示的错误也是协议适配器出错,要重装客服端是吗?
你在TNSPING 之前先用 set oracle_sid=你的连接字符串(SID) 然后再试一下TNSPING
1,检查是否是你的系统防火墙的原因
2,注册表问题。
进入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0将该环境变量ORACLE_SID设置为你的database的SID
我的注册表里没有ORACLE_SID的这个项啊!!
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已连接到空闲例程。
set oracle_sid=你的连接字符串(SID)
然后再试一下TNSPING
===================================
再仔细检查一遍
set oracle_sid=你的连接字符串(SID)
然后再试一下TNSPING 我试了,结果还是一样啊,tnsnames.ora 里面的配置确定是没有错的!
===================================
再仔细检查一遍这里面的配置是直接考同事的,他的可以的,我的应该也是没有错
用PL/SQL DEV 是可以连上的,
结果前天鬼迷心窍,去下了优化大师,弄了一下,就连不上,提示的意思应该是说 找不到原文件了,
NND