重庆思庄Oracle、Redhat认证学习论坛

标题: 11gR2 Restart Database SRVCTL启动DB报ORA-01031: insufficient privileges [打印本页]

作者: 郑全    时间: 2017-10-18 14:50
标题: 11gR2 Restart Database SRVCTL启动DB报ORA-01031: insufficient privileges
在安装Oracle 11gR2 Restart Database和使用SRVCTL执行启动Restart Database的时候都有可能出现类似下面的报错:
[root@rhel1 bin]# ./srvctl start database -d ractest
PRCR-1079 : Failed to start resource ora.ractest.db
ORA-01031: insufficient privileges
ORA-01031: insufficient privileges
CRS-2674: Start of 'ora.ractest.db' on 'rhel1' failed


原因是由于grid不在OSDBA组。将grid添加到OSDBA组中即可。

查看OSDBA组的系统组名:
[root@rhel1 bin]# su - oracle
[oracle@rhel1 ~]$ $ORACLE_HOME/bin/osdbagrp
dba

查看grid用户所在组:
[root@rhel1 bin]# groups grid
grid : oinstall asmadmin asmdba asmoper

为Grid用户添加OSDBA组dba:
[root@rhel1 bin]# usermod -a -G dba grid

再次查看grid用户对应的系统组,包含了dba组:
[root@rhel1 bin]# groups grid
grid : oinstall asmadmin dba asmdba asmoper

再次尝试使用SRVCTL启动Database,启动成功:
[root@rhel1 bin]# ./srvctl start database -d ractest


METALINK文章如下:
PRCR-1079 ORA-01031 CRS-2674 SRVCTL Fails to Start Database in Oracle Restart Job Role Separation Environment [ID 985743.1]

修改时间 23-JAN-2011     类型 PROBLEM     状态 MODERATED

In this Document
[size=-1]  Symptoms
  Cause
  Solution
  References





[size=-1]This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.



Applies to:Oracle Server - Enterprise Edition - Version: 11.2.0.1 and later   [Release: 11.2 and later ]
Information in this document applies to any platform.

SymptomsIn Oracle Restart (Standalone 11gR2 Grid Infrastructure) environment with Job Role Separation, srvctl fails to start database with error:


srvctl start db -d testdb
PRCR-1079 : Failed to start resource ora.testdb.db
ORA-01031: insufficient privileges
ORA-01031: insufficient privileges
CRS-2674: Start of 'ora.testdb.db' on 'siha1' failed



CausePossible causes:

1. Grid Infrastructure owner is not part of OSDBA group for the database thats being start up.
2. Grid Infrastructure owner doesn't have write permission to database dbs ($ORACLE_HOME/dbs) directory.

Solution1. As per documentation <Oracle Database Administrator's Guide 11g Release 2 (11.2) -> Configuring Oracle Restart -> Adding Components to the Oracle Restart Configuration>,  Grid Infrastructure owner must be part of OSDBA group if the database need to be managed by srvctl.

To find out OSDBA group for RDBMS home, execute: $RDBMS_HOME/bin/osdbagrp

To find out whether grid user is already part of OSDBA group, execute: groups <grid>

Location for groups command is /usr/bin/groups on Linux, and /bin/groups on AIX, Solaris and hp-ux

2. If Grid Infrastructure owner is already part of OSDBA group and the issue still exist, add group write permission to $RDBMS_HOME/dbsdirectory; for example

</grid

cd $RDBMS_HOME
chmod g+w dbs
ls -ld dbs





作者: 寡人将臣    时间: 2018-2-9 06:20
学习啦。正好遇到这个问题,谢谢!




欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2