ORA-12547: TNS:lost contact

环境是:
[oracle@localhost ~]$ uname -a
Linux localhost.localdomain 2.6.18-8.el5PAE #1 SMP Fri Jan 26 14:28:43 EST 2007 i686 i686 i386 GNU/Linux
安装的是10.2.0.1
按照文档上发现自己的系统包少了compat-libstdc++-33/compat-libstdc++-296这2个包包,然后使用
[oracle@localhost ~]$ strace   -f -o /tmp/trace.1.log $ORACLE_HOME/bin/sqlplus / as sysdba
发现10336 open("/home/oracle/product/10.2.0/db_1/lib/tls/sse2/libsqlplus.so", O_RDONLY) = -1 ENOENT (No such file or directory)
好多这样的错误,那应该是在安装的时候因为少了包导致的问题,没有办法只能重新relink了



ORA-12547: TNS:Lost Contact From SqlPlus [ID 422173.1]

 修改时间 01-MAR-2012     类型 PROBLEM     状态 PUBLISHED 

In this Document
  Symptoms
  Cause
  Solution
  References


Applies to:

Oracle Server - Enterprise Edition - Version: 10.1.0.2 to 11.2.0.2 - Release: 10.1 to 11.2
Linux x86
HP-UX PA-RISC (64-bit)
Oracle Solaris on x86 (32-bit)
z*OBSOLETE: IBM AIX 4.3 Based Systems (64-bit)
Linux x86-64

Symptoms

- Not able to make a local connection.
- Getting the following error when trying to connect using Sql*Plus

ERROR:
----------------
ORA-12547: TNS:lost contact

For example:

$sqlplus / as sysdba

SQL*Plus: Release 11.1.0.7.0 - Production on Wed Mar 30 11:59:06 2011

Copyright (c) 1982, 2008, Oracle. All rights reserved.

ERROR:
ORA-12547: TNS:lost contact

Cause

This could be due to
  1. to kernel parameters settings
  2. Incorrect permissions on the ORACLE executable
  3. Insufficient ulimit setting for stack
  4. $ORACLE_HOME/rdbms/lib/config.o is 0 bytes
  5. Oracle binaries have not been linked correctly
  6. A missing $ORACLE_HOME/dbs directory
    Note that creating an empty dbs directory already solves this error and you can for instance shutdown the instance. However, you will obviously not be able to restart because of the missing parameter file. So, the dbs directory needs to be fully restored.

Solution

To implement the solution, please execute the following steps:

1.  This could be due to kernel parameters settings

Please check the notes below that provide the required settings for kernel parameters
Note 169706.1  Oracle Database on AIX,HP-UX,Linux,MacOSX,Solaris,Tru64

2.  This could be due to incorrect permissions on the ORACLE.exe

Optionally, if you collect the OS trace with:

$strace -f -o /tmp/trace.1.log $ORACLE_HOME/bin/sqlplus / as sysdba

You may see some (Permission denied) in the trace.1.log like the following:

21810 open("/oracle/PROD/db/tech_st/11.1.0/admin/PROD_erptest/diag/rdbms/prod/PROD/alert/log.xml", O_WRONLY|O_CREAT|O_APPEND, 0664) = -1 EACCES (Permission denied)
......

21810 open("/oracle/PROD/db/tech_st/11.1.0/admin/PROD_erptest/diag/rdbms/prod/PROD/trace/alert_PROD.log", O_WRONLY|O_CREAT|O_APPEND, 0664) = -1 EACCES (Permission denied)

The 'ls' command should show permissions 6751 (as follows)

Please check permissions by running:

$ cd $ORACLE_HOME/bin
$ ls -l oracle

The output should show the correct permission which is:

-rwsr-s--x 1 oracle dba

If not, then please execute the following to correct the permissions:

$ cd $ORACLE_HOME/bin
$ chmod 6751 oracle
$ ls -l oracle

Please also verify if the following are correct:

echo $ORACLE_HOME
echo $ORACLE_SID
echo $LD_LIBRARY_PATH
echo $PATH

3. Check the current ulimit setting for stack

ulimit -a

Check the install guide for your specific platform and version of Oracle and set the stack appropriately.

4.  Check to ensure the following two files are not 0 bytes:

$ORACLE_HOME/bin/oracle
$ORACLE_HOME/rdbms/lib/config.o

If yes, rename the following file:

% cd $ORACLE_HOME/rdbms/lib
% mv config.o config.o.bad

Then, relink the oracle binary:

% relink oracle

5. If the above does not resolve I suggest that you shutdown the database and listener and then
"relink all"
Note 131321.1  How to Relink Oracle Database Software on UNIX 

References

NOTE:131321.1  - How to Relink Oracle Database Software on UNIX
NOTE:169706.1  - Oracle Database on Unix AIX,HP-UX,Linux,Mac OS X,Solaris,Tru64 Unix Operating Systems Installation and Configuration Requirements Quick Reference (8.0.5 to 11.2)
NOTE:555565.1  - Troubleshooting ORA-12547 TNS: Lost Contact
NOTE:188149.1  - How to Display and Change UNIX Process Resource Limits
NOTE:744512.1  - Ora-12547: Tns:Lost Contact Creating Database After Clean Installation
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值