【DB笔试面试724】在Oracle中,替换OCR磁盘组的步骤有哪些?
- 2020 年 1 月 20 日
- 筆記
♣
题目部分
在Oracle中,替换OCR磁盘组的步骤有哪些?
♣
答案部分
核心的几条命令:
crsctl replace votedisk +newocr ocrconfig -add +newocr ocrconfig -delete +ocr more /etc/oracle/ocr.loc spget spcopy -u +CRSDG/xx/asmparameterfile/registry.xx +newocr/spfileASM.ora spset
具体步骤包括:
1. 添加新存储
建立Normal冗余级别的OCR卷组,需要至少3个LUN,每个LUN最少容量为1GB,需要在存储端配置3个LUN至RAC集群中的各个节点。
2. 多路径绑定配置
配置/etc/multipatch.conf,添加新磁盘的UUID,假设多路径绑定之后的路径为/dev/mapper/newocr1、/dev/mapper/newocr2、/dev/mapper/newocr3,并且重新加载Mutilpathd服务生效。
3. ASMLib配置或udev绑定
节点1操作如下:
将新加的3个LUN添加到ASMLIB中
# /usr/sbin/oracleasm createdisk OCRNEW1 /dev/mapper/newocr1 # /usr/sbin/oracleasm createdisk OCRNEW2 /dev/mapper/newocr2 # /usr/sbin/oracleasm createdisk OCRNEW3 /dev/mapper/newocr3
节点2:
扫描新加的3个LUN:
# /usr/sbin/oracleasm scandisks # /usr/sbin/oracleasm listdisks
4. 备份OCR
–逻辑备份恢复
ocrconfig -export /oracle/app/11.2.0/grid/cdata/ZFTPCCDB-crs/export_asm.bak
–物理备份恢复
ocrconfig -manualbackup ocrconfig -showbackup ocrcheck
5. 新建OCR卷组
set line 9999 set pagesize 9999 col path format a60 SELECT a.group_number, disk_number,mount_status, a.name, path FROM v$asm_disk a order by a.disk_number; set line 999 select name,state,free_mb,required_mirror_free_mb,usable_file_mb,a.group_number, disk_number,mount_status, path from v$asm_diskgroup a; select a.group_number,name,TYPE,state,TOTAL_MB,free_mb from v$asm_diskgroup a; select name,state,free_mb,required_mirror_free_mb,usable_file_mb,a.group_number from v$asm_diskgroup a;
节点1新建Normal冗余级别的ASM卷组
sqlplus / as sysasm create diskgroup newocr normal redundancy disk '/dev/oracleasm/disks/neworc1', '/dev/oracleasm/disks/neworc2', '/dev/oracleasm/disks/neworc3' attribute 'compatible.asm'='11.2','compatible.rdbms'='11.2';
节点1执行mount磁盘组:
ALTER DISKGROUP NEWOCR MOUNT; crsctl stat res -t
6. 替换VOTE
在其中一个节点,root用户下执行:
替换VOTE
crsctl replace votedisk +newocr
确认
crsctl query css votedisk
7. 替换OCR
在grid或root用户下执行:
Node1执行以下命令:
ocrconfig -add +newocr ocrconfig -delete +ocr more /etc/oracle/ocr.loc
Node2可以不用执行以下命令:
ocrconfig -repair -add +newocr ocrconfig -repair -delete +ocr
8. 迁移ASM SPFILE
在GRID用户下任一节点执行
$ asmcmd
查看当前的ASMSPFILE
ASMCMD> spget
复制SPFILE至新卷组
ASMCMD> spcopy -u +CRSDG/xx/asmparameterfile/registry.xx +newocr/spfileASM.ora
查看新SPFILE绝对路径
ASMCMD> ls -l +newocr/spfileASM.ora +NEWOCR/XX/ASMPARAMETERFILE/REGISTRY.253.833623103 ASMCMD>spset +NEWOCR/XX/ASMPARAMETERFILE/REGISTRY.253.833623103
修改两个节点grid用户下$ORACLE_HOME/dbs/init.ora文件内容,也可以不用修改:
SPFILE='+newocr/spfileASM.ora'
9. 确认老OCR磁盘组是否还有其他文件
10. 删除老OCR卷组
重启集群后:
节点2:
su - grid sqlplus / as sysasm alter diskgroup OCR dismount; exit
节点1:
su - grid sqlplus / as sysasm drop diskgroup ocr; drop diskgroup OVDISK INCLUDING CONTENTS; drop diskgroup OVDISK FORCE INCLUDING CONTENTS;
11. 删除磁盘
任一节点ROOT用户下操作:
# /usr/sbin/oracleasm dropdisk OCR
删除多路径绑定配置,删除配置/etc/multipatch.conf中原有OCR盘内容。
最后从存储上删除到2个节点的映射。
12. 删除CRS记录
crsctl delete res ora.OCR.dg
& 说明:
有关OCR的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2141215/,https://ke.qq.com/course/316525
本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗