共计 2392 个字符,预计需要花费 6 分钟才能阅读完成。
环境:CentOS6.5 64 位,Oracle 11g R2 11.2.0.1.0
现象:Oracle RAC 生产环境中,已经有一个实例正常使用,有需求再建一实例。
新建实例过程中,最后步骤具体报错如下:
[Thread-829] [2015-09-09 11:29:42.007 CST] [DatabaseImpl.createStopDep:3579] stop dependencies = hard(intermediate:ora.asm,shutdown:ora.DG_DATA.dg)
[Thread-829] [2015-09-09 11:29:42.057 CST] [InstanceStepOPS.executeImpl:952] PRCR-1006 : Failed to add resource ora.proxy.db for null
PRCR-1071 : Failed to register or update resource ora.proxy.db
CRS-2566: User ‘oracle’ does not have sufficient permissions to operate on resource ‘ora.LISTENER.lsnr’, which is part of the dependency specification.
[Thread-829] [2015-09-09 11:29:42.057 CST] [BasicStep.configureSettings:304] messageHandler being set=oracle.sysman.assistants.util.UIMessageHandler@30394ffa
[Thread-829] [2015-09-09 11:29:42.057 CST] [BasicStep.configureSettings:304] messageHandler being set=oracle.sysman.assistants.util.UIMessageHandler@30394ffa
oracle.sysman.assistants.util.step.StepExecutionException: PRCR-1006 : Failed to add resource ora.proxy.db for null
PRCR-1071 : Failed to register or update resource ora.proxy.db
CRS-2566: User ‘oracle’ does not have sufficient permissions to operate on resource ‘ora.LISTENER.lsnr’, which is part of the dependency specification.
at oracle.sysman.assistants.dbca.backend.InstanceStepOPS.executeImpl(InstanceStepOPS.java:953)
at oracle.sysman.assistants.util.step.BasicStep.execute(BasicStep.java:210)
at oracle.sysman.assistants.util.step.BasicStep.callStep(BasicStep.java:251)
at oracle.sysman.assistants.dbca.backend.DBEntryStep.executeImpl(DBEntryStep.java:229)
at oracle.sysman.assistants.util.step.BasicStep.execute(BasicStep.java:210)
at oracle.sysman.assistants.util.step.Step.execute(Step.java:140)
at oracle.sysman.assistants.util.step.StepContext$ModeRunner.run(StepContext.java:2667)
at java.lang.Thread.run(Thread.java:595)
解决办法:
参考了 http://www.linuxidc.com/Linux/2015-01/111579.htm 文章,
1. 尝试用 oracle 用户手动注册数据库资源,srvctl add database -d proxy -o $ORACLE_HOME,提示已经注册 Server pool。
2. 使用 root 用户删除,crsctl delete serverpool ora.proxy
3. 使用 oracle 用户手动注册数据库资源,srvctl add database -d proxy -o $ORACLE_HOME
4. 上面执行结果提示权限问题,于是查看报错资源详情,crsctl stat res ora.LISTENER.lsnr -p
5. 使用 root 用户手动修改资源权限,crsctl modify resource “ora.LISTENER.lsnr” -attr “ACL=’owner:grid:rwx,pgrp:oinstall:r-x,other::r–‘”
以下是解决过程截图:
最后问题解决。问题造成的原因应该是操作时不注意用户,使用 root 操作了 grid 的相关操作。
更多 Oracle 相关信息见 Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12
本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-11/136927.htm