ITPub博客

首页 > 数据库 > Oracle > listener start fail TNS-12555 利用trace找到问题

listener start fail TNS-12555 利用trace找到问题

原创 Oracle 作者:guocun09 时间:2017-10-26 12:08:34 0 删除 编辑

現象:

Red Hat Enterprise Linux Server release 5.4 (Tikanga)

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

開啟listener時報錯 TNS-12555,Linux Error

scmautosty<*scmauto*/home/oracle>$lsnrctl start

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 03-APR-2013 14:25:21

Copyright (c) 1991, 2011, Oracle.  All rights reserved.

Starting /u01/product/oracle/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 11.2.0.3.0 - Production

System parameter file is /u01/product/oracle/network/admin/listener.ora

Log messages written to /u01/product/diag/tnslsnr/scmautosty/listener/alert/log.xml

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.202.10.151)(PORT=1526)))

Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1526)))

TNS-12555: TNS:permission denied

 TNS-12560: TNS:protocol adapter error

  TNS-00525: Insufficient privilege for operation

   Linux Error: 1: Operation not permitted

Listener failed to start. See the error message(s) above...


診斷:

使用listener trace

可以參考[ID 219968.1]SQLNet & Oracle Net Services - Tracing and Logging at a Glance

加入$ORACLE_HOME/network/admin/listener.ora

trace_level_listener = 16

trace_file_listener = listener

trace_directory_listener = /u01/product/oracle/network/trace

trace_timestamp_listener = on

trace_filelen_listener = 100

trace_fileno_listener = 2

logging_listener = off

log_directory_listener = /u01/product/oracle/network/log

log_file_listener=listener

 

DIAG_ADR_ENABLED_LISTENER=OFF

再次開啟

$lsnrctl start

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 09-APR-2013 10:44:15

Copyright (c) 1991, 2011, Oracle.  All rights reserved.

Starting /u01/product/oracle/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 11.2.0.3.0 - Production

System parameter file is /u01/product/oracle/network/admin/listener.ora

Trace information written to /u01/product/oracle/network/trace/listener1.trc

Error listening on: (ADDRESS=(PROTOCOL=ipc)(PARTIAL=yes)(QUEUESIZE=1))

No longer listening on:

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ysdcsssty)(PORT=1526)))

TNS-12546: TNS:permission denied

 TNS-12560: TNS:protocol adapter error

  TNS-00516: Permission denied

   Linux Error: 13: Permission denied

 

$vi /u01/product/oracle/network/trace/listener1.trc

發現其中一條fail記錄

[000001 09-APR-2013 10:44:15:915] sntusgph: fail to search /var/tmp/.oracle

 

分析:

查看網上一篇http://blog.163.com/ly_89/blog/static/186902299201210136255650/

修改/var/tmp/.oracle的用戶組到dba.oracle,問題解決,奇怪的是問題時用戶daemon. root

[root@scmautosty //]# cd /var/tmp/

[root@scmautosty tmp]# ls -la

total 24

drwxrwxrwt  4 root root 4096 Apr  2 15:04 .

drwxr-xr-x 26 root root 4096 Apr  2 15:27 ..

drwxrwxrwt  2 root root 4096 Apr  3 14:25 .oracle

drwxrwxrwx  9 root root 4096 Apr  2 15:27 vxif

[root@scmautosty tmp]# cd .oracle/

[root@scmautosty .oracle]# ls -la

total 12

drwxrwxrwt 2 root   root 4096 Apr  3 14:25 .

drwxrwxrwt 4 root   root 4096 Apr  2 15:04 ..

srwxrwxrwx 1 daemon root    0 Apr  2 17:01 s#14782.1

srwxrwxrwx 1 daemon root    0 Apr  2 17:01 s#14782.2

srwxrwxrwx 1 daemon root    0 Apr  2 17:01 sEXTPROC1526


[root@scmautosty tmp]# chown -R oracle.dba .oracle

[root@scmautosty tmp]# ls -la

total 24

drwxrwxrwt  4 root   root 4096 Apr  2 15:04 .

drwxr-xr-x 26 root   root 4096 Apr  2 15:27 ..

drwxrwxrwt  2 oracle dba  4096 Apr  3 14:25 .oracle

drwxrwxrwx  9 root   root 4096 Apr  2 15:27 vxif

 

另外關閉時也遇到這個問題可以ps –ef|grep LISTENER查看并kill進程

 

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/25583515/viewspace-2146428/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
DBA,掌握Oracle,SQLServer,MySQL,hadoop,casscandra等数据库。喜爱深入研究数据库技术原理,擅长管理和优化工作。

注册时间:2011-10-02

  • 博文量
    177
  • 访问量
    686667