参考:
ORA-12560: TNS:protocol adapter error
Additional key words
TNS-12560
Cause and prerequisites
ORA-12560 is a collective error caused by different problems related to the connect log that is used. Other, more specific error messages may have occurred in connection with ORA-12560 that narrow down the actual cause more more precisely. The following may result in an ORA-12560 being generated within the framework of the R/3 application and administration:
1. NT: Start client tools (svrmgrl, sqlplus, sapdba, ...) using a terminal server
2. NT: Service oracleservice does not run
3. Incorrect / missing entry for ORACLE_SID in environment / registry
4. Non-alphanumeric characters in the SID
5. NT: Missing directory authorizations
6. Error in creating the database for new installation
7. Resource problems
8. RELIANT: s-bit not set for some Oracle tools
9. TRU64, AIX: Destroyed sockets due to an Oracle bug
Solution
1. The terminal server does not support any connections with the BEQUEATH log (BEQ). This log is used as a default when calling svrmgrl or sqlplus. As a result, calling svrmgrl or another tool that uses BEQ causes an ORA-12560. sapdba or the BR tools can also be affected, as svrmgrl is called internally. The problem can be avoided as follows:
a) Do not use a terminal server if you use svrmgrl or sqlplus.
b) Set the environment variable LOCAL= before starting the tool used. This prevents a connect being implemented via BEQ.
2. Start the service oracleservice if it has not already been sarted. Make sure no error message appears (regarding DLLs, for example).
If the service oracleservice does not exist (for example, during a database upgrade), you can create this with "oradim[73|80] -new -SID ". Note that the relevant command is called "oradim73" in Oracle 7.3, "oradim80" in Oracle 8.0 and "oradim" in Oracle 8.1.
3. "ORACLE_SID = " must be set in the environment. On NT, a corresponding entry must be available in the registry under HKEY_LOCAL_MACHINE -> SOFTWARE -> ORACLE and the subdirectory HOME-.
4. Oracle allows a SID with non-alphanumeric characters (for example, underscores "_") to be created. However, this terminates the connect with ORA-12560. This can only be solved by deleting the instance and creating it again under a new name.
5. Check whether the user SYSTEM has all authorizations on the Oracle home directory and its subdirectories.
6. If the error occurs within the framework of a new installation of the database, the scripts for creating the database ("CREATE DATABASE") may not have run correctly.
ORA-12560: TNS:protocol adapter error
Additional key words
TNS-12560
Cause and prerequisites
ORA-12560 is a collective error caused by different problems related to the connect log that is used. Other, more specific error messages may have occurred in connection with ORA-12560 that narrow down the actual cause more more precisely. The following may result in an ORA-12560 being generated within the framework of the R/3 application and administration:
1. NT: Start client tools (svrmgrl, sqlplus, sapdba, ...) using a terminal server
2. NT: Service oracleservice does not run
3. Incorrect / missing entry for ORACLE_SID in environment / registry
4. Non-alphanumeric characters in the SID
5. NT: Missing directory authorizations
6. Error in creating the database for new installation
7. Resource problems
8. RELIANT: s-bit not set for some Oracle tools
9. TRU64, AIX: Destroyed sockets due to an Oracle bug
Solution
1. The terminal server does not support any connections with the BEQUEATH log (BEQ). This log is used as a default when calling svrmgrl or sqlplus. As a result, calling svrmgrl or another tool that uses BEQ causes an ORA-12560. sapdba or the BR tools can also be affected, as svrmgrl is called internally. The problem can be avoided as follows:
a) Do not use a terminal server if you use svrmgrl or sqlplus.
b) Set the environment variable LOCAL= before starting the tool used. This prevents a connect being implemented via BEQ.
2. Start the service oracleservice if it has not already been sarted. Make sure no error message appears (regarding DLLs, for example).
If the service oracleservice does not exist (for example, during a database upgrade), you can create this with "oradim[73|80] -new -SID ". Note that the relevant command is called "oradim73" in Oracle 7.3, "oradim80" in Oracle 8.0 and "oradim" in Oracle 8.1.
3. "ORACLE_SID = " must be set in the environment. On NT, a corresponding entry must be available in the registry under HKEY_LOCAL_MACHINE -> SOFTWARE -> ORACLE and the subdirectory HOME-.
4. Oracle allows a SID with non-alphanumeric characters (for example, underscores "_") to be created. However, this terminates the connect with ORA-12560. This can only be solved by deleting the instance and creating it again under a new name.
5. Check whether the user SYSTEM has all authorizations on the Oracle home directory and its subdirectories.
6. If the error occurs within the framework of a new installation of the database, the scripts for creating the database ("CREATE DATABASE") may not have run correctly.
解决方案 »
- SQL 错误: ORA-04098: 触发器 'PMG001.OBJECTADMIN_SEQ_TRIGGER' 无效且未通过重新验证
- imp-00008错误:
- 为什么move lob到另一表空间执行100次左右后,move速度极慢?
- Oracle安装问题
- 怎样可以实现对ORACLE数据库的直接访问,即使是网络的没有客户端也可以的那种?
- 利用sqlplus的spool将表中的数据导出到文本文件中的问题!
- 关于VC下PROC程序编写中DATE类型的问题!
- 求指教~Windows 11G 客户端sqlplus报12560,但服务器端正常
- 救急:oracle11g导入报下面错误
- oracle中游标能定位吗?
- 使"种子字段"比如ID自增的触发器怎么写?谢谢
- 新手问题真多
我遇到的错误不是ORA-12560 ,而是ORA-12535。我仅仅只是将客户端的IP改了,服务器未作任何改动,就出现上述的错误。是客户端的某些设置不对吗??
C:\>sqlplus system/system@servicename就是无法连接到服务器