去商丘施工时,使用DBCA生成建库脚本时,到选择节点时,遇到以下错误,当时跳过这个错误,手工编写建库脚本,但有此问题如鲠在喉,后来查到原因及解决方法,特此记录,以备后查:红旗Linux DC4.0 + 9206RAC
java.security.AccessControlException: access denied (java.io.FilePermission /usr/bin/env execute) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:269) at java.security.AccessController.checkPermission(AccessController.java:401) at java.lang.SecurityManager.checkPermission(SecurityManager.java:524) at java.lang.SecurityManager.checkExe
[@more@]RAC DBCA建库时(java.security.AccessControlException:) 一次在linux x86_64用dbca(版本9206RAC)建库里,报以下错误:
java.security.AccessControlException: access denied (java.io.FilePermission /usr/bin/env execute) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:269) at java.security.AccessController.checkPermission(AccessController.java:401) at java.lang.SecurityManager.checkPermission(SecurityManager.java:524) at java.lang.SecurityManager.checkExe
经查与metalink上的NOTE:308008.1介绍的一样
The information in this document applies to:
Oracle Server - Enterprise Edition - Version: 9.2.0.5 to 10.1.0.3
Linux x86-64
Red Hat Enterprise Linux Advanced Server x86-64 (AMD Opetron Architecture)
Symptoms
While using DBCA to create a RAC database following error messages are received on the cluster selection page.
Messages in the DBCA java tracing
------------------------------------------------
[AWT-EventQueue-0] [15:10:9:444] [WizardPage.processWizardValidateEvent:Unknow] In wizardValidatePage function
[AWT-EventQueue-0] [15:10:9:444] [WizardPageExt.wizardValidatePage:205] In validate function
[AWT-EventQueue-0] [15:10:9:444] [WizardPageExt.wizardValidatePage:205] The selected nodes are: [Ljava.lang.String;@16089a5
[AWT-EventQueue-0] [15:10:9:444] [CommonOPSAttributes.setNodeNames:161] 1.nodeList.length=2
[AWT-EventQueue-0] [15:10:9:444] [CommonOPSAttributes.setNodeNames:161] 2.nodeList.length=2
[AWT-EventQueue-0] [15:10:9:444] [Cluster.getNodes:179] Returning an existing instance of GetActiveNodes
[AWT-EventQueue-0] [15:10:9:444] [Cluster.isShared:530] Cluster Nodes:
[AWT-EventQueue-0] [15:10:9:444] [Cluster.isShared:530] dcwys015
[AWT-EventQueue-0] [15:10:9:444] [Cluster.isShared:530] dcwys016
[AWT-EventQueue-0] [15:10:9:444] [Cluster.isShared:530] dcwys016
[AWT-EventQueue-0] [15:10:9:444] [Cluster.isShared:530] dcwys015
Screen Errors
-------------------
dbca
java.security.AccessControlException: access denied (java.io.FilePermission /usr/bin/env execute)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:269)
at java.security.AccessController.checkPermission(AccessController.java:401)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:524)
at java.lang.SecurityManager.checkExec(SecurityManager.java:771)
at java.lang.Runtime.exec(Runtime.java:563)
at java.lang.Runtime.exec(Runtime.java:428)
at java.lang.Runtime.exec(Runtime.java:364)
at java.lang.Runtime.exec(Runtime.java:326)
at oracle.ops.mgmt.nativesystem.sQueryCluster.
at oracle.ops.mgmt.nativesystem.NativeSystem.
at oracle.ops.mgmt.nativesystem.UnixSystem.
at oracle.ops.mgmt.nativesystem.SystemFactory.CreateSystem(SystemFactory.java:41)
at oracle.ops.mgmt.cluster.Cluster.isShared(Cluster.java:538)
at oracle.sysman.assistants.util.attributes.CommonOPSAttributes.updateShared(CommonOPSAttributes.java:527)
at oracle.sysman.assistants.util.attributes.CommonOPSAttributes.setNodeNames(CommonOPSAttributes.java:161)
at oracle.sysman.assistants.dbca.ui.OPSNodeListPage.actionPerformed(OPSNodeListPage.java:291)
at oracle.ewt.button.PushButton.processActionEvent(Unknown Source)
at oracle.ewt.lwAWT.LWButton.processActionEvent(Unknown Source)
at oracle.ewt.button.PushButton.processEventImpl(Unknown Source)
at oracle.ewt.lwAWT.LWComponent.redispatchEvent(Unknown Source)
at oracle.ewt.lwAWT.LWComponent.processEvent(Unknown Source)
at oracle.ewt.button.PushButton.activate(Unknown Source)
at oracle.ewt.lwAWT.AbstractButton.processMouseReleased(Unknown Source)
at oracle.ewt.lwAWT.AbstractButton.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Component.java:4897)
at java.awt.Container.processEvent(Container.java:1569)
at oracle.ewt.lwAWT.LWComponent.processEventImpl(Unknown Source)
at oracle.ewt.button.PushButton.processEventImpl(Unknown Source)
at oracle.ewt.lwAWT.LWComponent.redispatchEvent(Unknown Source)
at oracle.ewt.lwAWT.LWComponent.processEvent(Unknown Source)
Cause
Oracle user which uses DBCA, does not have the permission to use the java packages for the RAC environment across the nodes.
Solution 解决方法:
There are two approaches to solve this problem
Either use the following workaround or apply the Patch 4233179
Create the file:
.java.policy on each node in the Oracle Users Home directory.
containing the following code.
grant {
permission java.security.AllPermission;
};
When done, please change the file permission to 770 for the .java.policy , across the nodes.
Now invoke the DBCA again.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/271063/viewspace-1013798/ ,如需转载,请注明出处,否则将追究法律责任。