TNS-12518、TNS-00517、IBM/AIX RISC System/6000 Error: 32: Broken pipe

0    383    1

Tags:

👉 本文共约1817个字,系统预计阅读时间或需7分钟。

【故障|监听】TNS-12518、TNS-00517和 Linux Error:32:Broken pipe

前言部分

导读和注意事项

各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,\~O(∩_∩)O\~:

① Linux Error: 32: Broken pipe的可能原因(重点)

② TNS-12518: TNS:listener could not hand off client connection的一般解决过程

③ SQL*Plus登录报错:ORA-12537: TNS:connection closed

故障分析及解决过程

故障环境介绍

项目source db
db 类型单机
db version11.2.0.3.0
db 存储ASM
OS版本及kernel版本RHEL 6.5

故障发生现象及报错信息

登陆报错:

查监听日志(/u01/app/11.2.0/grid/network/admin/listener.ora),报错如下:

故障分析

潇湘隐者:http://www.cnblogs.com/kerrycode/p/4164838.html

我的解决参考:http://www.itpub.net/thread-1870217-1-1.html

根据MOS: Troubleshooting Guide for TNS-12518 TNS listener could not hand off client connection (文档 ID 550859.1)中,

根据第5条,因为我的grid是11.2.0.1,而Oracle是11.2.0.3的,查询MOS:ORA-12537 / ORA-12547 or TNS-12518 if Listener (including SCAN Listener) and Database are Owned by Different OS User (文档 ID 1069517.1),里边明确指出是由于\$RDBMS_HOME/bin/oracle文件的权限问题导致。

故障解决

\$ORACLE_HOME/bin/oracle文件的权限问题,应该为-rwsr-s--x,属主应该是oracle:asmadmin。

解决办法:

方法:

  1. 修改oracle的权限为6751

  1. 重新用setasmgidwrap设置oracle

重新连接:

故障处理总结

如果可执行文件\$ORACLE_HOME/bin/oracle的属主或权限设定出了问题,那么可能会造成很多问题。例如:无法登陆到数据库、ora-600错误、“TNS-12518: TNS:listener could not hand off client connection”、“Linux Error: 32: Broken pipe”、“ORA-12537: TNS:connection closed”、访问ASM磁盘出错等。解决办法很简单,可以在grid用户下运行setasmgidwrap命令重新配置\$ORACLE_HOME/bin/oracle可执行文件的权限和属主或者直接将oracle文件的权限修改为6751。\$ORACLE_HOME/bin/oracle可执行文件正确属主应该是oracle:asmadmin,并且权限必须有s共享才可以,如下所示:

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复