将Oracle集群注册表和表决磁盘迁移到新的ASM磁盘组。这种任务一般有两种情况:
1)升级集群件版本到11gR2,将Oracle集群注册表和表决磁盘从裸设备迁移到ASM磁盘组上。
2)将Oracle集群注册表和表决磁盘从旧的磁盘组迁移到新的磁盘组。
准备工作:
查看Oracle集群注册表和表决磁盘存放在+ORC磁盘组
[grid@DBRAC1 ~]$ ocrcheck
[grid@DBRAC1 ~]$ crsctl query css votedisk
建立ASM磁盘组OCRNEW
SQL>CREATE DISKGROUP OCNEW NORMAL REDUNDANCY
FAILGROUP OCRNEWl DISK 'ORCL:OCRNEW1' name OCRNEWl
FAILGROUP OCRNEW2 DISK 'ORCL:OCRNEW2' name OCRNEW2
FAILGROUP OCRNEW3 DISK 'ORCL:OCRNEW3' name OCRNEW3;
迁移OCR到新的ASM磁盘组。
给OCR添加新的ASM磁盘组:
ocrconfig -add +OCRNEW
拿掉旧的OCRASM磁盘组:
ocrconfig -delete +OCR
将表决磁盘从旧ASM磁盘组迁移到新的ASM磁盘组
crsctl replace votedisk +OCRNEW
查看表决磁盘
crsctl query css votedisk
确认/etc/oracle/ocr.loc文件被更新指向新的ASM磁盘组:
$ more /etc/oracle/ocr.loc
重新启动CRS
用force选项选择"所有集群件的节点":
[root@DBRAC1 ~]#/u01/app/19.3.0/grid/bin/crsctl stop crs -f
[root@DBRAC1 ~]# /u01/app/19.3.0/grid/bin/crsctl start crs
[grid@DBRAC1 ~]$ crsctl check crs
把spfile迁移到新的磁盘组
SQL> show parameter spfile;
SQL> create pfile=' /home/grid/init+ASM.ora' from spfile;
SQL> !vi /home/grid/init+ASM.ora
在新的VOCR磁盘组上利用pfile创建新的spfile:
SQL>create spfile='+OCRNEW' from pfile='/home/grid/init+ ASM.ora';
重新启动HAS
[root@DBRAC1 ~]# /u01/app/19.3.0/grid/bin/crsctl stop has
[root@DBRAC1 ~]# /u01/app/19.3.0/grid/bin/crsctl start has
检查新的spfile位置
SQL> show parameter spfile;
特别注意
因为新的VOCR ASM磁盘组是为了Oracle集群注册表和表决磁盘的,我们需要遵循失败组的规则, 正常冗余3个失败组和高冗余5个失败组。不然命令"crsctl replace votedisk+VOCR"会报错"ora-15274 error, Not enough failgroups(s) to create voting file."。 还需要将新的VOCR磁盘组兼容参数设成12.1.0.0.0, VOCR才能存放Oracle集群注册表和表决磁盘,这个ASM磁盘组参数的初始值是10.1.0.0.0。
如果觉得《磁盘位置_ORACLE RAC ASM磁盘组迁移到新的ASM磁盘组方法》对你有帮助,请点赞、收藏,并留下你的观点哦!