修改文件目录权限导致数据库连接报错
1,使用oracle用户sysdba登录数据库报错ORA-12547
-bash-3.2$ sqlplus "/as sysdba"
SQL*Plus: Release 11.2.0.2.0 Production on 星期五 1月 4 16:59:26 2013
Copyright (c) 1982, 2010, Oracle. All rights reserved.
ERROR:
ORA-12547: TNS: 丢失连接
-bash-3.2$ oerr ora 12547
12547, 00000, "TNS:lost contact"
// *Cause: Partner has unexpectedly gone away, usually during process
// startup.
// *Action: Investigate partner application for abnormal termination. On an
// Interchange, this can happen if the machine is overloaded.
2,此时查看listener的配置,service不是很正常,blocked
[grid@dtydb3 ~]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 04-JAN-2013 17:14:56
Copyright (c) 1991, 2010, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.2.0 - Production
Start Date 04-JAN-2013 17:13:34
Uptime 0 days 0 hr. 1 min. 21 sec
Trace Level off
Security ON: Local OS Authentication
SNMP ON
Listener Parameter File /oracle/11.2.0/grid/network/admin/listener.ora
Listener Log File /oracle/11.2.0/grid/log/diag/tnslsnr/dtydb3/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.4.124.233)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.4.124.243)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
Instance "+ASM1", status READY, has 1 handler(s) for this service...
Service "SMPDB" has 1 instance(s).
Instance "SMPDB1", status READY, has 1 handler(s) for this service...
Service "SYS$STRMADMIN.STREAMS_QUEUE.HRDB" has 1 instance(s).
Instance "hrdb1", status READY, has 1 handler(s) for this service...
Service "hrdb" has 1 instance(s).
Instance "hrdb1", status READY, has 1 handler(s) for this service...
Service "tyolap" has 1 instance(s).
Instance "tyolap1", status READY, has 1 handler(s) for this service...
The command completed successfully
[grid@dtydb3 trace]$ lsnrctl services
LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 04-JAN-2013 17:18:40
Service "tyolap" has 1 instance(s).
Instance "tyolap1", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:444 state:blocked
LOCAL SERVER
The command completed successfully
此时业务也已不能正常连接
[grid@dtydb3 trace]$ tail -f listener.log
TNS-12547: TNS:lost contact
TNS-12560: TNS:protocol adapter error
TNS-00517: Lost contact
Linux Error: 32: Broken pipe
04-JAN-2013 17:15:24 * (CONNECT_DATA=(SID=tyolap1)(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.4.125.56)(PORT=63947)) * establish * tyolap1 * 12518
TNS-12518: TNS:listener could not hand off client connection
TNS-12547: TNS:lost contact
TNS-12560: TNS:protocol adapter error
TNS-00517: Lost contact
Linux Error: 32: Broken pipe
3,由于刚修改过相关目录的权限,因此怀疑目录权限有问题,翻看操作日志,做了以下类似的操作,listener日志的权限被修改导致不能正确登录
chmod 655 /oracle/app/oracle/diag/rdbms/tyolap
chmod 644 listener.log
同时启动重启数据库也报错,也确定了权限的问题
tyolap1>startup
ORA-48146: missing read, write, or exec permission on directory during ADR initialization [/oracle/app/oracle/diag/rdbms/tyolap/tyolap1] [0]
ORA-48188: user missing read, write, or exec permission on specified directory
Linux-x86_64 Error: 13: Permission denied
Additional information: 2
4,查看另一个节点,正确的权限应该是,修改权限太大意,比较安全的方法是使用chmod u+x
[oracle@dtydb4 ~]$ ls -l /oracle/app/oracle/diag/rdbms/tyolap
total 4
-rw-r----- 1 oracle asmadmin 0 Jan 11 2012 i_1.mif
drwxr-xr-x 15 oracle asmadmin 4096 Jan 11 2012 tyolap2
5,修改权限后数据库恢复正常
分享到:
相关推荐
oracle启动失败,ORA-00702报错,windows,linux系统下解决办法
kettle连接oracle12C--报错ORA-28040 没有匹配的验证协议
oracle数据库优化之后,报错报错“ora-00838”的处理方法
Oracle数据库报错ORA-00904: 标识符无效问题解决办法,有可能是字段名或者表名写错了,也有可能是
解决navicat报错ORA-12737(OCI报错) 解决navicat报错ORA-12737(OCI报错)
1.Navicat OCI引⽤位置可以从Navicat菜单栏“⼯具”-》“选项”-》环境-》“OCI”中找到 2.Navicat替换的⽂件
Oracle报错ORA-12516 TNS:listener could not find available handler with matching protocol stack
CLOB字段类型报错 ORA-01704:文字字符串过长的解决
前言 最近在工作中遇到了一个问题,错误是...DBCA报错,首先看DBCA的日志,日志中也是报ORA-12547: TNS:lost contact 于是再sqlplus / as sysdba敲回车,也是报ORA-12547: TNS:lost contact, 基于之前的工程经验,先
oracle报错ora-12541:TNS无监听程序
使用工具IMPDP导入数据时ORA-39002、ORA-39070错误排查。使用工具IMPDP导入数据时ORA-39002、ORA-39070错误排查 使用工具IMPDP导入数据时ORA-39002、ORA-39070错误排查
用oracle数据库新建连接时遇到ora-12505,此问题解决后又出现ora-12519错误,郁闷的半天,经过一番折腾问题解决,下面小编把我的两种解决方案分享给大家,仅供参考。 解决方案一: 今天工作时在新建连接的时候遇到...
错误描述:oracle远程连接服务器出现 ORA-12170 TNS:连接超时 错误检查:有很多是oracle自身安装的问题,但是我这里服务器配置正常,监听正常,服务正常,远程可以ping通服务器。 这里主要是防火墙问题,解决办法: ...
关于oracle做恢复操作时启动数据库报错,通常是由于rman做了恢复操作导致的报错. 通过继续执行恢复指令而恢复数据库,成功启动数据库.
在启动Oracle数据库时提示:ORA-00845 MEMORY_TARGET not supported on this system错误,解决办法
主要介绍了解决django migrate报错ORA-02000: missing ALWAYS keyword,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
主要介绍了PL/SQL登录Oracle数据库报错ORA-12154:TNS:无法解析指定的连接标识符已解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
OGG之ORA-01403案例,包括这个案例所遇到的错误详解,对使用的参数进行了详细的解说
ERwin连接oracle报ORA-01041内部错误,hostdef扩展名不存在解决办法,实验可解决问题。