关闭ASM实例时 ORA-01031: insufficient privileges

来源:互联网 发布:ubuntu和centos 编辑:程序博客网 时间:2024/06/06 19:56

停RAC的ASM实例的时候报错:

ORA-15097: cannot SHUTDOWN ASM instance with connected client

srvctl stop asm -n enode1 -f
PRCR-1014 : Failed to stop resource ora.asm
PRCR-1065 : Failed to stop resource ora.asm
CRS-2673: Attempting to stop 'ora.asm' on 'enode1'
ORA-15097: cannot SHUTDOWN ASM instance with connected client
CRS-2675: Stop of 'ora.asm' on 'enode1' failed
CRS-2675: Stop of 'ora.asm' on 'enode1' failed

 

RAC 环境是Oracle 11gR2。 在Metalink上搜了一下,明白咋回事了。 还是习惯的问题。

 

在Oracle 10g 环境下,我们停RAC的顺序是:

       (1)数据库

       (2)ASM

       (3)CRS

 

       但是在Oracle 11gR2下,如果是用OUI来安装的话,除了数据文件之外,OCR 也是放在ASM里的。 11gR2是支持RAW设备的,但是需要手动的安装。

 

      所以这里就遇到了问题。 OCR也是放在ASM里的,这样CRSD 就会成为ASM的客户端。 如果我们像Oracle 10g里那样直接停ASM的时候,就会报上面的错误。 所以,在11gR2下面,要停ASM实例的话,只能和CRS一起停。

       root用户下执行:crsctl stop crs

 

注意:不要直接kill 掉ASM 进程,或者用shutdown abort 来关闭ASM 实例。 这样CRS 也会被挂掉。

 

 

在关闭ASM实例的时候,还遇到一个问题:

sqlplus / as sysdba

SQL> shutdown immediate; 
ORA-01031: insufficient privileges

SQL>

 

       提示权限不错,如果遇到这种错误,可以用sqlplus / as  sysasm方式连接。 这样就有了sysasm的权限。





原创粉丝点击