ITPub博客

首页 > 数据库 > Oracle > TNS-12555报错的解决方案

TNS-12555报错的解决方案

原创 Oracle 作者:Hoegh 时间:2017-09-13 15:34:47 0 删除 编辑

同事在使用脚本启动数据库时,发现监听器无法正常启动。通过lsnrctl start命令很容易复现了这个问题。


问题复现

点击(此处)折叠或打开

  1. [oracle@localhost ~]$ lsnrctl start
  2. LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 06-AUG-2014 19:40:52
  3. Copyright (c) 1991, 2009, Oracle. All rights reserved.
  4. Starting /opt/oracle/11g/bin/tnslsnr: please wait...
  5. TNSLSNR for Linux: Version 11.2.0.1.0 - Production
  6. System parameter file is /opt/oracle/11g/network/admin/listener.ora
  7. Log messages written to /opt/oracle/diag/tnslsnr/localhost/listener/alert/log.xml
  8. Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
  9. TNS-12555: TNS:permission denied
  10. TNS-12560: TNS:protocol adapter error
  11. TNS-00525: Insufficient privilege for operation
  12. Linux Error: 1: Operation not permitted
  13. Listener failed to start. See the error message(s) above...
通过报错提示,发现是权限问题。

解决方案


查看.oracle文件


点击(此处)折叠或打开

  1. [root@localhost ~]# ls -lrtd /var/tmp/.oracle
  2.  drwxrwxrwt. 2 root root 4096 8\u6708 5 21:48 /var/tmp/.oracle
  3. [root@localhost ~]# ls -lrtd /tmp/.oracle
  4.  drwxrwxrwt. 2 root root 4096 8\u6708 5 20:33 /tmp/.oracle

发现权限虽然是777,但是用户组和所有者不对,应该把用户组和所有者改为改成oracle:dba

修改.oracle文件权限


点击(此处)折叠或打开

  1. [root@localhost ~]# chown -R oracle:dba /var/tmp/.oracle
  2. [root@localhost ~]# chown -R oracle:dba /tmp/.oracle
  3. [root@localhost ~]# ls -lrtd /tmp/.oracle
  4. drwxrwxrwt. 2 oracle dba 4096 8\u6708 5 20:33 /tmp/.oracle
  5. [root@localhost ~]# ls -lrtd /var/tmp/.oracle
  6. drwxrwxrwt. 2 oracle dba 4096 8\u6708 5 21:48 /var/tmp/.oracle


再次启动监听,成功!


~~~~~~~ the end~~~~~~~~~
hoegh
2017.09.13


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

上一篇: mongoDB中的幂等性
请登录后发表评论 登录
全部评论

注册时间:2015-03-13

  • 博文量
    132
  • 访问量
    2058536