admin管理员组

文章数量:1530013

使用克隆安装oracle 11g 以后,然后使用cadb建库报错:ORA-12547: TNS:lost contact

对于这么一个不明显的错误,实在很难定位确认问题,网上给了很多建议:

1、缺包,libiao、ksh等

2、配置文件错误

3、环境变量不对

4、Oracle目录权限不对

5、$ORACLE_HOME/bin/oracle文件权限或文件大小不对

针对以上问题做了比较认真的检查,都没有发现问题所在。

同时使用strace对执行sqlplus / as sysdba进行了跟踪,没有发现明显异常。

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

最后把配置文件如/etc/security/limits.conf、/etc/sysctl.conf删除,并从新配置后问题解决。

最后对所有的配置文件进行了对比。

发下原有配置文件/etc/security/limits.conf内容如下:

*               soft    nofile          65534

*               hard    nofile          65534

*               soft    stack           1024

*               hard    stack           1024

*               soft    nproc           65534

*               hard    nproc           65534

oracle              soft    nproc   2047

oracle              hard    nproc   16384

oracle              soft    nofile  1024

oracle              hard    nofile  65536

oracle              soft    stack   10240

oracle              soft    memlock         unlimited

oracle              hard    memlock         unlimited

原来安装脚本在修改配置文件的时候是追加的形式,对于原有的*开头的配置文件不会先删除,导致如下这一行配置没有生效

*               soft    stack           1024  #生效

oracle              soft    stack   10240     #不生效

在使用strace sqlplus / as sysdba跟踪的时候,发现在打开一个1.1M的文件之后抛出异常ORA-12547,原来问题就出在配置文件这里。

总结:

有时候,因为一些意外的原因,导致我们修改的配置文件并没有生效,所以我们可以加一个验证环节,针对这个问题,我们可以使用ulimit -a检查各个各资源限制情况是否OK。

参考:

ERROR:

$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:

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

附:详细报错日志

Copying database files

DBCA_PROGRESS : 1%

DBCA_PROGRESS : 2%

ORA-12547: TNS:lost contact

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 4%

DBCA_PROGRESS : 37%

Creating and starting Oracle instance

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 38%

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 40%

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 45%

DBCA_PROGRESS : 50%

DBCA_PROGRESS : 51%

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 56%

ORA-12547: TNS:lost contact

ORA-12547: TNS:lost contact

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 57%

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 61%

DBCA_PROGRESS : 62%

Completing Database Creation

DBCA_PROGRESS : 66%

DBCA_PROGRESS : 70%

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 73%

DBCA_PROGRESS : 74%

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 85%

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 86%

ORA-12547: TNS:lost contact

ORA-12547: TNS:lost contact

ORA-12547: TNS:lost contact

DBCA_PROGRESS : 98%

DBCA_PROGRESS : 100%

本文标签: 错误ORACLEmemlockHard