现在的位置: 首页 > 综合 > 正文

Oracle用户组错误导致的错误

2013年06月16日 ⁄ 综合 ⁄ 共 2607字 ⁄ 字号 评论关闭

看了已经有很多的朋友开始关注11gR2了,并且也开始着手11gR2的cluster了,今天又碰到一个朋友,在安装11gR2中的错误。

 

这个朋友部署的是standalone的grid infrastructure,既然是用grid infrastructure了,当然asm就是数据库的存储的首选了。grid infrastructure安装成功,状态如下

 

[grid@rac11g1 ~]$ crs_stat -t
Name           Type           Target    State     Host       
------------------------------------------------------------
ora.DATA.dg    ora....up.type ONLINE    ONLINE    rac11g1    
ora....ER.lsnr ora....er.type ONLINE    ONLINE    rac11g1    
ora.asm        ora.asm.type   ONLINE    ONLINE    rac11g1    
ora.cssd       ora.cssd.type  ONLINE    ONLINE    rac11g1    
ora.diskmon    ora....on.type ONLINE    ONLINE    rac11g1

 

呵呵虽然在11gr2已经不推荐crs_xxxx系列的命令了,但是10g里用习惯了,还是习惯用这个。在11gr2里最好的方法是

 

[grid@rac11g1 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS      
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  ONLINE       rac11g1                                     
ora.LISTENER.lsnr
               ONLINE  ONLINE       rac11g1                                     
ora.asm
               ONLINE  ONLINE       rac11g1                  Started            
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       rac11g1                                     
ora.diskmon
      1        ONLINE  ONLINE       rac11g1                                     

 

这里可见grid infrastructure是OK了。问题是安装database后用dbca建库的时候出现了

 

在dbca建库的时候,选择数据库文件的目的目录时有问题了。使用asm做存储的话,要选择一个diskgroup。

 

可是这时候diskgroup 列表里,没有可惜的,是空的。

 

从上面的ora.DATA.dg来看,asm的实例已经有一个DATA的diskgroup是online的,所以asm实例是正确的,那么这里为什么没有可选的呢,如果是这样的话,dbca后面的步骤不能进行了,问题何在呀。

 

分析一下数据吧。

 

这里是dbca建库,日志就是dbca的log,要能比较快的进行故障诊断,我们一定要熟悉各种日志。这样才能找到错误的原因,这里的dbca的日志在cfgtoollogs/dbca/下。

 

在其中发现错误所在

[AWT-EventQueue-0] [ 2010-06-10 00:15:18.970 CST ] [ASMUtils.loadDiskGroups:713]  ORA-01031: insufficient privileges

很明显了,是权限问题。检查Oracle用户的用户组

[oracle@rac11g1 lib]$ id
uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),503(asmadmin)

 

这里asmadmin是sysasm的,这里应该是asmdba,而不是sysadmin。

 

用root用户,修改oracle的用户组

[root@rac11g1 ~]# usermod -G oinstall,dba,asmdba oracle

 

[root@rac11g1 ~]# id oracle
uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),504(asmdba)

然后在启动dbca,可以看到diskgroup了,

 

有关这些组的差异可以详见hunter的安装文档

http://www.oracle.com/technology/global/cn/pub/articles/hunter-rac11gr2-iscsi-2.html

 

 

Oracle技术论坛
  http://www.oraforum.com

抱歉!评论已关闭.