asm磁盘组依赖导致数据库自启动报错

来源:这里教程网 时间:2026-03-03 12:44:48 作者:

重启os发现数据库没有自动起来,其别都正常启动了,手工启动也报错 [oracle@hca1 ~]$ srvctl start database -d orcl PRCR-1079 : Failed to start resource ora.orcl.db CRS-5017: The resource action "ora.HCA1_CACHE.dg start" encountered the following error:  ORA-15032: not all alterations performed ORA-15017: diskgroup "HCA1_CACHE" cannot be mounted 在此之前已经迁移了这个磁盘组上的所有文件,包括redo,spfile,datafile,tempfile,controlfile,且通过srvctl 重启过实例没问题,但是没有重启集群,而是直接重启了OS,结果发现实例没有自动启动,但是通过sqlplus能手工启动数据库 [grid@hca1 ~]$ crs_stat -t Name           Type           Target    State     Host         ———————————————————— ora…._10G.dg ora….up.type ONLINE    ONLINE    hca1         ora….ACHE.dg ora….up.type ONLINE    OFFLINE               ora….500G.dg ora….up.type ONLINE    ONLINE    hca1         ora….ACHE.dg ora….up.type ONLINE    OFFLINE                ora….500G.dg ora….up.type ONLINE    ONLINE    hca1         ora….ACHE.dg ora….up.type ONLINE    ONLINE    hca1         ora….ER.lsnr ora….er.type ONLINE    ONLINE    hca1         ora….N1.lsnr ora….er.type ONLINE    ONLINE    hca1         ora.OCR.dg     ora….up.type ONLINE    ONLINE    hca1         ora.asm        ora.asm.type   ONLINE    ONLINE    hca1         ora.cvu        ora.cvu.type   ONLINE    ONLINE    hca1         ora.gsd        ora.gsd.type   OFFLINE   OFFLINE                ora….SM1.asm application    ONLINE    ONLINE    hca1         ora….A1.lsnr application    ONLINE    ONLINE    hca1         ora.hca1.gsd   application    OFFLINE   OFFLINE                ora.hca1.ons   application    ONLINE    ONLINE    hca1         ora.hca1.vip   ora….t1.type ONLINE    ONLINE    hca1         ora….SM2.asm application    ONLINE    ONLINE    hca2         ora….A2.lsnr application    ONLINE    ONLINE    hca2         ora.hca2.gsd   application    OFFLINE   OFFLINE                ora.hca2.ons   application    ONLINE    ONLINE    hca2         ora.hca2.vip   ora….t1.type ONLINE    ONLINE    hca2         ora….network ora….rk.type ONLINE    ONLINE    hca1         ora.oc4j       ora.oc4j.type  ONLINE    ONLINE    hca1         ora.ons        ora.ons.type   ONLINE    ONLINE    hca1         ora.orcl.db    ora….se.type ONLINE    OFFLINE                ora….est.svc ora….ce.type ONLINE    OFFLINE                ora….ry.acfs ora….fs.type ONLINE    ONLINE    hca1         ora.scan1.vip  ora….ip.type ONLINE    ONLINE    hca1     这两个显示offline的磁盘组已经在之前通过drop diskgroup  成功删除了,看来没有删干净,手工删除 [grid@hca1 ~]$ srvctl remove diskgroup -g hca1_cache PRCA-1002 : Failed to remove CRS resource ora.HCA1_CACHE.dg for ASM Disk Group hca1_cache PRCR-1028 : Failed to remove resource ora.HCA1_CACHE.dg PRCR-1072 : Failed to unregister resource ora.HCA1_CACHE.dg CRS-0222: Resource 'ora.HCA1_CACHE.dg' has dependency error. [oracle@hca1 ~]$ srvctl remove diskgroup -g hca2_cache PRCA-1002 : Failed to remove CRS resource ora.HCA2_CACHE.dg for ASM Disk Group hca2_cache PRCR-1028 : Failed to remove resource ora.HCA2_CACHE.dg PRCR-1072 : Failed to unregister resource ora.HCA2_CACHE.dg CRS-0222: Resource 'ora.HCA2_CACHE.dg' has dependency error. 提示有依赖,强制删除 [oracle@hca1 ~]$ srvctl remove diskgroup -g hca1_cache -f [oracle@hca1 ~]$ srvctl remove diskgroup -g hca2_cache -f [grid@hca1 ~]$ crs_stat -t Name           Type           Target    State     Host         ———————————————————— ora…._10G.dg ora….up.type ONLINE    ONLINE    hca1         ora….500G.dg ora….up.type ONLINE    ONLINE    hca1         ora….500G.dg ora….up.type ONLINE    ONLINE    hca1         ora….ACHE.dg ora….up.type ONLINE    ONLINE    hca1         ora….ER.lsnr ora….er.type ONLINE    ONLINE    hca1         ora….N1.lsnr ora….er.type ONLINE    ONLINE    hca1         ora.OCR.dg     ora….up.type ONLINE    ONLINE    hca1         ora.asm        ora.asm.type   ONLINE    ONLINE    hca1         ora.cvu        ora.cvu.type   ONLINE    ONLINE    hca1         ora.gsd        ora.gsd.type   OFFLINE   OFFLINE                ora….SM1.asm application    ONLINE    ONLINE    hca1         ora….A1.lsnr application    ONLINE    ONLINE    hca1         ora.hca1.gsd   application    OFFLINE   OFFLINE                ora.hca1.ons   application    ONLINE    ONLINE    hca1         ora.hca1.vip   ora….t1.type ONLINE    ONLINE    hca1         ora….SM2.asm application    ONLINE    ONLINE    hca2         ora….A2.lsnr application    ONLINE    ONLINE    hca2         ora.hca2.gsd   application    OFFLINE   OFFLINE                ora.hca2.ons   application    ONLINE    ONLINE    hca2         ora.hca2.vip   ora….t1.type ONLINE    ONLINE    hca2         ora….network ora….rk.type ONLINE    ONLINE    hca1         ora.oc4j       ora.oc4j.type  ONLINE    ONLINE    hca1         ora.ons        ora.ons.type   ONLINE    ONLINE    hca1         ora.orcl.db    ora….se.type ONLINE    ONLINE    hca1         ora….est.svc ora….ce.type ONLINE    ONLINE    hca2         ora….ry.acfs ora….fs.type ONLINE    ONLINE    hca1         ora.scan1.vip  ora….ip.type ONLINE    ONLINE    hca1  offline的磁盘组已经消失,但是启动还是提示老磁盘组不能mount [grid@hca1 ~]$ srvctl start database -d orcl 检查数据库属性 [grid@hca1 ~]$ srvctl config database -d orcl -a Database unique name: orcl Database name:  Oracle home: /oracle/app/oracle/product/11.2.0/db_1 Oracle user: oracle Spfile: +HCA1_SDD1_500G/orcl/spfileorcl.ora Domain:  Start options: open Stop options: immediate Database role: PRIMARY Management policy: AUTOMATIC Server pools: orcl Database instances: orcl1,orcl2 PRCD-1012 : Failed to retrieve disk group list for database orcl. PRCR-1035 : Failed to look up CRS resource ora.HCA1_CACHE.dg for orcl PRCA-1000 : ASM Disk Group HCA1_CACHE does not exist PRCR-1001 : Resource ora.HCA1_CACHE.dg does not exist 检查一个正常的11grac,通过srvctl config db -d orcl -a 看到有一行Disk Groups: DATA ,看来就是这个依赖选项没有改导致的 [grid@hca1 ~]$ srvctl modify db -d orcl -a hca1_sdd1_500g PRCD-1163 : Failed to modify database orcl PRCR-1071 : Failed to register or update resource ora.orcl.db CRS-0245:  User doesn't have enough privilege to perform the operation [root@hca1 ~]# /oracle/app/11.2.0/grid/bin/srvctl modify db -d orcl -a hca1_sdd1_500g [root@hca1 ~]# /oracle/app/11.2.0/grid/bin/srvctl config db -d orcl -a  Database unique name: orcl Database name:  Oracle home: /oracle/app/oracle/product/11.2.0/db_1 Oracle user: oracle Spfile: +HCA1_SDD1_500G/orcl/spfileorcl.ora Domain:  Start options: open Stop options: immediate Database role: PRIMARY Management policy: AUTOMATIC Server pools: orcl Database instances: orcl1,orcl2 Disk Groups: HCA1_SDD1_500G Mount point paths:  Services: test Type: RAC Database is enabled Database is administrator managed 再次启动成功 [grid@hca1 ~]$ srvctl start database -d orcl 如果删除迁移数据库到新的磁盘组之后删除了了最初创建实例的磁盘组,则不光要srvctl 修改spfile还要修改这个依赖磁盘组属性

相关推荐