windows下 sqlplus / as sysdba 报ora-12560的终极解决方法


windows下 sqlplus / as sysdba 报ora-12560的终极解决方法

本文是原创文章。转载请注明出处:http://blog.csdn.net/msdnchina/article/details/38169095


windows下,sqlplus / as sysdba常常报 ORA-12560: TNS:protocol adapter error,解决这个报错。有多个方法:

1.确认windows注冊表中的ORACLE_HOME 键及其 键值 是正确的,是有效的
 比方:HKEY_LOCAL_MACHINESOFTWAREORACLEKEY_OraDb10g_home1下。找到ORACLE_HOME 键,相应的键值为H:oracleproduct10.2.0db_1 ,事实上正确的键值为F:oracleproduct10.2.0db_1

--->注意:windows下,请不要设置ORACLE_HOME环境变量,具体请见我翻译的文章:

http://blog.csdn.net/msdnchina/article/details/38010025

--->注意:windows下的注冊表存储的ORACLE_HOME 键 和  ORACLE_SID 键相当于unix下的.profile中定义的ORACLE_HOME,ORACLE_SID等环境变量---该说法纯属我个人的总结。


2确保windows 服务里变的OracleServiceXXX服务是已启动状态。

  关于OracleServiceXXX 和 Oracle 实例的关系,请见我写的文章:

    http://blog.csdn.net/msdnchina/article/details/38011055


3.cmd下,cd到 F:oracleproduct10.2.0db_1in下,再敲sqlplus / as sysdba
注意,不是cd到F:oracleproduct10.2.0client_1in。也就是说cd到 oracle数据库软件的server端。不是cd到oracle数据库软件的客户端。


--->注意:windows的cmd下。敲一个命令,windows对该命令的查找顺序为:首先找当前文件夹下有无该命令。其次再到PATH路径下找有无该命令。


4.cmd下。set ORACLE_SID=你想进入的数据库的那个sid


5.cmd下,cd到 F:oracleproduct10.2.0db_1in下。再敲sqlplus /@网络服务名 as sysdba


注意,不是cd到F:oracleproduct10.2.0client_1in。

也就是说cd到 oracle数据库软件的server端,不是cd到oracle数据库软件的客户端。


原文地址:https://www.cnblogs.com/yfceshi/p/7160377.html