您的位置:首页 > 运维架构 > Linux

启动listener遇TNS-12555/ TNS-12560 /TNS-00525错误处理

2015-10-25 16:37 417 查看
1、问题现象

    在oracle用户下,以lsnrctl start命令启动listener时,遭遇TNS-12555/ TNS-12560 TNS-00525错误,详细报错信息如下:

[oracle@ol6-single ~]$ lsnrctl start

 

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 25-OCT-2015 15:56:43

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

Starting /dba/oracle/product/11.2.0/db_1/bin/tnslsnr: please wait...

 

TNSLSNR for Linux: Version 11.2.0.3.0 - Production

System parameter file is /dba/oracle/product/11.2.0/db_1/network/admin/listener.ora

Log messages written to /dba/oracle/diag/tnslsnr/ol6-single/listener/alert/log.xml

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ol6-single)(PORT=1521)))

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

TNS-12555: TNS:permission denied

 TNS-12560: TNS:protocol adapter error

  TNS-00525: Insufficient privilege for operation

   Linux Error: 1: Operation not permitted

2、问题分析

    上面报错信息,其实是很清晰的报出,是因为权限问题所导致的不能正常启动。

    但是,到底是哪个文件的权限不足所导致的呢?这个很关键。

    经过在metalink上找到一篇文档 ID 434062.1  的文章,文章中列出的CHANGES列出的内容如下:

Some IPC keys have been reused from older listener(s)

Same listener has previously been started under different OS users

Listeners running under different OS users are using the same IPC keys

Permissions in /var/tmp have been previously reset.

    上面四点,前面三点笔者均经过了验证,实际情况是不存在问题的,现在目标直奔第四点,/var/tmp的权限。

    /var/tmp目录下只有一个隐藏文件夹,那就是.oracle,文章中的CAUSE 中也指出:

Older IPC socket file(s) were left in /var/tmp/.oracle and they cannot be deleted by the listener upon startup.

    现在看到是/var/tmp/.oracle文件夹或其下级文件夹的权限问题了。

3、问题解决

#chmod -R 777 /var/tmp/.oracle

 

下面来验证问题解决效果:

[oracle@ol6-single .oracle]$ lsnrctl start

 LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 25-OCT-2015 16:12:09

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

 Starting /dba/oracle/product/11.2.0/db_1/bin/tnslsnr: please wait...

 

TNSLSNR for Linux: Version 11.2.0.3.0 - Production

System parameter file is /dba/oracle/product/11.2.0/db_1/network/admin/listener.ora

Log messages written to /dba/oracle/diag/tnslsnr/ol6-single/listener/alert/log.xml

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ol6-single)(PORT=1521)))

Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

 

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ol6-single)(PORT=1521)))

STATUS of the LISTENER

------------------------

Alias                     LISTENER

Version                   TNSLSNR for Linux: Version 11.2.0.3.0 - Production

Start Date                25-OCT-2015 16:12:32

Uptime                    0 days 0 hr. 0 min. 0 sec

Trace Level               off

Security                  ON: Local OS Authentication

SNMP                      OFF

Listener Parameter File   /dba/oracle/product/11.2.0/db_1/network/admin/listener.ora

Listener Log File         /dba/oracle/diag/tnslsnr/ol6-single/listener/alert/log.xml

Listening Endpoints Summary...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ol6-single)(PORT=1521)))

  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

The listener supports no services

The command completed successfully

   Listener启动成功,问题解决。

 

 

 

本文作者:黎俊杰(网名:踩点),从事”系统架构、操作系统、存储设备、数据库、中间件、应用程序“六个层面系统性的性能优化工作

欢迎加入 系统性能优化专业群,共同探讨性能优化技术。群号:258187244
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息