迁移OCR、表决磁盘和asm spfile到其他磁盘组中

来源:互联网 发布:ug三维制图软件 编辑:程序博客网 时间:2024/04/28 02:15

本文参考:https://levipereira.wordpress.com/2012/01/11/explaining-how-to-store-ocr-voting-disks-and-asm-spfile-on-asm-diskgroup-rac-or-rac-extended/


最初磁盘组+CRSTMP 里有一个voting 文件, ocr 和 asm spfile.

迁移后磁盘组CRS存储OCR文件和asm spfile,磁盘组VOTE存储表决磁盘和OCR MIRROR

检查节点是否为Actives:

$ olsnodes -slnxora01        Activelnxora02        Activelnxora03        Active

使用OCRCHECK查看OCR文件的存储位置:

$ ocrcheckStatus of Oracle Cluster Registry is as follows :         Version                  :          3         Total space (kbytes)     :     262120         Used space (kbytes)      :       3848         Available space (kbytes) :     258272         ID                       : 1997055112         Device/File Name         :    +CRSTMP                                    Device/File integrity check succeeded                                     Device/File not configured                                     Device/File not configured                                     Device/File not configured                                     Device/File not configured          Cluster registry integrity check succeeded          Logical corruption check bypassed due to non-privileged user
使用CRSCTL查看表决文件的存储位置:

$ crsctl query css votedisk##  STATE    File Universal Id                File Name Disk group--  -----    -----------------                --------- --------- 1. ONLINE   a0d6ea8dfb944fe7bfb799a451195a18 (ORCL:CRSTMP01) [CRSTMP]Located 1 voting disk(s).
使用ASMCMD查看ASM SPFILE的存储位置:

$ asmcmd spget+CRSTMP/testcluster/ASMPARAMETERFILE/REGISTRY.253.772133609
获取ASM上关于表决磁盘的信息。我们在ASM上不能看到表决磁盘的文件,我们只知道表决磁盘存储在asmdisk上。
SET LINESIZE 150COL PATH FOR A30COL NAME FOR A10COL HEADER_STATUS FOR A20COL FAILGROUP FOR A20COL FAILGROUP_TYPE FOR A20COL VOTING_FILE FOR A20SELECT NAME,PATH,HEADER_STATUS,FAILGROUP, FAILGROUP_TYPE, VOTING_FILEFROM V$ASM_DISKWHERE GROUP_NUMBER = ( SELECT GROUP_NUMBER             FROM V$ASM_DISKGROUP             WHERE NAME='CRSTMP'); NAME       PATH                           HEADER_STATUS        FAILGROUP            FAILGROUP_TYPE       VOTING_FILE---------- ------------------------------ -------------------- -------------------- -------------------- --------------------CRSTMP01   ORCL:CRSTMP01                  MEMBER               CRSTMP01             REGULAR              Y
在ASM上获取OCR和ASM SPFILE的路径和全名
olsnodes -c : 显示集群的名称

$ olsnodes -ctstcluster set linesize 100col FILES_OF_CLUSTER for a60 select concat('+'||gname, sys_connect_by_path(aname, '/')) FILES_OF_CLUSTER     from ( select b.name gname, a.parent_index pindex, a.name aname,              a.reference_index rindex , a.system_created, a.alias_directory,              c.type file_type       from v$asm_alias a, v$asm_diskgroup b, v$asm_file c       where a.group_number = b.group_number             and a.group_number = c.group_number(+)             and a.file_number = c.file_number(+)             and a.file_incarnation = c.incarnation(+)     ) WHERE file_type in ( 'ASMPARAMETERFILE','OCRFILE')start with (mod(pindex, power(2, 24))) = 0            and rindex in                ( select a.reference_index                  from v$asm_alias a, v$asm_diskgroup b                  where a.group_number = b.group_number                        and (mod(a.parent_index, power(2, 24))) = 0                        and a.name = LOWER('&CLUSTERNAME')                )connect by prior rindex = pindex; Enter value for clustername: tstclusterold  17:                         and a.name = LOWER('&CLUSTERNAME')new  17:                         and a.name = LOWER('tstcluster') FILES_OF_CLUSTER---------------------------------------------------------+CRSTMP/tstcluster/OCRFILE/REGISTRY.255.772133361+CRSTMP/tstclsuter/ASMPARAMETERFILE/REGISTRY.253.772133609
以下CRS01和CRS02将用于磁盘组的CRS,VOTE01,VOTE02和VOTE03将用于磁盘组VOTE

 col path for a30 col name for a20 col header_status for a20 select path,name,header_status from v$asm_disk where path like '%CRS%' or path like '%VOTE%'; PATH                           NAME                 HEADER_STATUS------------------------------ -------------------- --------------------ORCL:CRS01                                          PROVISIONEDORCL:CRS02                                          PROVISIONEDORCL:VOTE01                                         PROVISIONEDORCL:VOTE02                                         PROVISIONEDORCL:VOTE03                                         PROVISIONEDORCL:CRSTMP01                  CRSTMP01             MEMBER
创建表决磁盘的磁盘组,每个磁盘必须在不同的failgroup中。
CREATE DISKGROUP VOTE NORMAL REDUNDANCY     FAILGROUP STG1_C1 DISK 'ORCL:VOTE01'     FAILGROUP STG1_C2 DISK 'ORCL:VOTE02'     FAILGROUP STG1_C1_1 DISK 'ORCL:VOTE03'     ATTRIBUTE 'compatible.asm' = '11.2.0.0.0'; Diskgroup created. # 在其他节点上启动磁盘组SQL> ! srvctl start diskgroup -g vote -n lnxora02,lnxora03 # 检查磁盘组是否活动在所有节点上SQL> ! srvctl status diskgroup -g voteDisk Group vote is running on lnxora01,lnxora02,lnxora03
创建CRS磁盘组:

SQL>CREATE DISKGROUP CRS NORMAL REDUNDANCY     FAILGROUP STG1_C1 DISK 'ORCL:CRS01'     FAILGROUP STG1_C2 DISK 'ORCL:CRS02'     ATTRIBUTE 'compatible.asm' = '11.2.0.0.0'; Diskgroup created. # 在其他节点上启动磁盘组SQL> ! srvctl start diskgroup -g crs -n lnxora02,lnxora03 # 检查磁盘组是否活动在所有节点上SQL> ! srvctl status diskgroup -g crsDisk Group crs is running on lnxora01,lnxora02,lnxora03SQL>SET LINESIZE 150COL PATH FOR A30COL NAME FOR A10COL HEADER_STATUS FOR A20COL FAILGROUP FOR A20COL FAILGROUP_TYPE FOR A20COL VOTING_FILE FOR A20SELECT NAME,PATH,HEADER_STATUS,FAILGROUP, FAILGROUP_TYPE, VOTING_FILEFROM V$ASM_DISKWHERE GROUP_NUMBER IN ( SELECT GROUP_NUMBER             FROM V$ASM_DISKGROUP             WHERE NAME IN ('CRS','VOTE')); NAME       PATH                           HEADER_STATUS        FAILGROUP            FAILGROUP_TYPE       VOTING_FILE---------- ------------------------------ -------------------- -------------------- -------------------- --------------------VOTE03     ORCL:VOTE03                    MEMBER               STG1_C1_1            REGULAR              NVOTE02     ORCL:VOTE02                    MEMBER               STG1_C2              REGULAR              NVOTE01     ORCL:VOTE01                    MEMBER               STG1_C1              REGULAR              NCRS01      ORCL:CRS01                     MEMBER               STG1_C1              REGULAR              NCRS02      ORCL:CRS02                     MEMBER               STG1_C2              REGULAR              N

移动表决文件从+ CRSTMP至+ VOTE
$ crsctl replace votedisk +VOTESuccessful addition of voting disk aaa75b9e7ce24f39bfd9eecb3e3c0e38.Successful addition of voting disk 873d51346cd34fc2bf9caa94999c4cd8.Successful addition of voting disk acda8619b74c4fe8bf886ee6c9fe8d1a.Successful deletion of voting disk a0d6ea8dfb944fe7bfb799a451195a18.Successfully replaced voting disk group with +VOTE.CRS-4266: Voting file(s) successfully replaced $ crsctl query css votedisk##  STATE    File Universal Id                File Name Disk group--  -----    -----------------                --------- --------- 1. ONLINE   aaa75b9e7ce24f39bfd9eecb3e3c0e38 (ORCL:VOTE01) [VOTE] 2. ONLINE   873d51346cd34fc2bf9caa94999c4cd8 (ORCL:VOTE02) [VOTE] 3. ONLINE   acda8619b74c4fe8bf886ee6c9fe8d1a (ORCL:VOTE03) [VOTE]Located 3 voting disk(s). SET LINESIZE 150COL PATH FOR A30COL NAME FOR A10COL HEADER_STATUS FOR A20COL FAILGROUP FOR A20COL FAILGROUP_TYPE FOR A20COL VOTING_FILE FOR A20SELECT NAME,PATH,HEADER_STATUS,FAILGROUP, FAILGROUP_TYPE, VOTING_FILEFROM V$ASM_DISKWHERE GROUP_NUMBER = ( SELECT GROUP_NUMBER             FROM V$ASM_DISKGROUP             WHERE NAME='VOTE'); NAME       PATH                           HEADER_STATUS        FAILGROUP            FAILGROUP_TYPE       VOTING_FILE---------- ------------------------------ -------------------- -------------------- -------------------- --------------------VOTE03     ORCL:VOTE03                    MEMBER               STG1_C1_1            REGULAR              YVOTE02     ORCL:VOTE02                    MEMBER               STG1_C2              REGULAR              YVOTE01     ORCL:VOTE01                    MEMBER               STG1_C1              REGULAR              Y
移动OCR到磁盘组+ CRS和+ VOTE,并从磁盘组中删除+ CRSTMP
# /u01/app/11.2.0/grid/bin/ocrcheckStatus of Oracle Cluster Registry is as follows :         Version                  :          3         Total space (kbytes)     :     262120         Used space (kbytes)      :       3868         Available space (kbytes) :     258252         ID                       : 1997055112         Device/File Name         :    +CRSTMP                                    Device/File integrity check succeeded                                     Device/File not configured                                     Device/File not configured                                     Device/File not configured                                     Device/File not configured          Cluster registry integrity check succeeded          Logical corruption check succeeded # /u01/app/11.2.0/grid/bin/ocrconfig -add +CRS # /u01/app/11.2.0/grid/bin/ocrcheckStatus of Oracle Cluster Registry is as follows :         Version                  :          3         Total space (kbytes)     :     262120         Used space (kbytes)      :       3836         Available space (kbytes) :     258284         ID                       : 1997055112         Device/File Name         :    +CRSTMP                                    Device/File integrity check succeeded         Device/File Name         :       +CRS                                    Device/File integrity check succeeded                                     Device/File not configured                                     Device/File not configured                                     Device/File not configured          Cluster registry integrity check succeeded          Logical corruption check succeeded # /u01/app/11.2.0/grid/bin/ocrconfig -add +VOTE  /u01/app/11.2.0/grid/bin/ocrcheckStatus of Oracle Cluster Registry is as follows :         Version                  :          3         Total space (kbytes)     :     262120         Used space (kbytes)      :       3836         Available space (kbytes) :     258284         ID                       : 1997055112         Device/File Name         :    +CRSTMP                                    Device/File integrity check succeeded         Device/File Name         :       +CRS                                    Device/File integrity check succeeded         Device/File Name         :      +VOTE                                    Device/File integrity check succeeded                                     Device/File not configured                                     Device/File not configured          Cluster registry integrity check succeeded          Logical corruption check succeeded # /u01/app/11.2.0/grid/bin/ocrconfig -delete +CRSTMP /u01/app/11.2.0/grid/bin/ocrcheckStatus of Oracle Cluster Registry is as follows :         Version                  :          3         Total space (kbytes)     :     262120         Used space (kbytes)      :       3836         Available space (kbytes) :     258284         ID                       : 1997055112         Device/File Name         :       +CRS                                    Device/File integrity check succeeded         Device/File Name         :      +VOTE                                    Device/File integrity check succeeded                                     Device/File not configured                                     Device/File not configured                                     Device/File not configured          Cluster registry integrity check succeeded          Logical corruption check succeeded
移动ASM SPFILE到磁盘组+ CRS

你会得到一个文件正在使用中的错误,但实际上已经将文件复制到文件系统和配置文件中。

$ asmcmd spget+CRSTMP/tstcluster/ASMPARAMETERFILE/REGISTRY.253.772133609 $ asmcmd spmove '+CRSTMP/tstcluster/ASMPARAMETERFILE/REGISTRY.253.772133609' '+CRS/tstcluster/spfileASM.ora'ORA-15032: not all alterations performedORA-15028: ASM file '+CRSTMP/tstcluster/ASMPARAMETERFILE/REGISTRY.253.772133609' not dropped; currently being accessed (DBD ERROR: OCIStmtExecute) # 检查是否已经更新$ asmcmd spget+CRS/tstcluster/spfileASM.ora
检查ASM集群文件:

set linesize 100col FILES_OF_CLUSTER for a60 select concat('+'||gname, sys_connect_by_path(aname, '/')) FILES_OF_CLUSTER     from ( select b.name gname, a.parent_index pindex, a.name aname,              a.reference_index rindex , a.system_created, a.alias_directory,              c.type file_type       from v$asm_alias a, v$asm_diskgroup b, v$asm_file c       where a.group_number = b.group_number             and a.group_number = c.group_number(+)             and a.file_number = c.file_number(+)             and a.file_incarnation = c.incarnation(+)     ) WHERE file_type in ( 'ASMPARAMETERFILE','OCRFILE')start with (mod(pindex, power(2, 24))) = 0            and rindex in                ( select a.reference_index                  from v$asm_alias a, v$asm_diskgroup b                  where a.group_number = b.group_number                        and (mod(a.parent_index, power(2, 24))) = 0                        and a.name = LOWER('&CLUSTERNAME')                )connect by prior rindex = pindex;Enter value for clustername: tstclusterold  17:                         and a.name = LOWER('&CLUSTERNAME')new  17:                         and a.name = LOWER('tstcluster') FILES_OF_CLUSTER------------------------------------------------------------+CRSTMP/tstcluster/OCRFILE/REGISTRY.255.772133361+CRSTMP/tstcluster/ASMPARAMETERFILE/REGISTRY.253.772133609+VOTE/tstcluster/OCRFILE/REGISTRY.255.772207785+CRS/tstcluster/OCRFILE/REGISTRY.255.772207425+CRS/tstcluster/ASMPARAMETERFILE/REGISTRY.253.772208263+CRS/tstcluster/spfileASM.ora
为了在ASM中可以使用新的SPFILE并断开磁盘组+ CRSTMP,我们需要重新启动集群。

# /u01/app/11.2.0/grid/bin/crsctl stop cluster -allCRS-2673: Attempting to stop 'ora.crsd' on 'lnxora01'CRS-2790: Starting shutdown of Cluster Ready Services-managed resources on 'lnxora01'.# /u01/app/11.2.0/grid/bin/crsctl start cluster -allCRS-2672: Attempting to start 'ora.cssdmonitor' on 'lnxora01'CRS-2672: Attempting to start 'ora.cssdmonitor' on 'lnxora02'. $ asmcmd spget+CRS/tstcluster/spfileASM.ora
现在,我们可以删除磁盘组+ CRSTMP

SQL> ! srvctl stop diskgroup -g crstmp -n lnxora02,lnxora02 SQL> drop diskgroup crstmp including contents; Diskgroup dropped. SQL>FILES_OF_CLUSTER------------------------------------------------------------+CRS/tstcluster/OCRFILE/REGISTRY.255.772207425+CRS/tstcluster/ASMPARAMETERFILE/REGISTRY.253.772211229+CRS/tstcluster/spfileASM.ora+VOTE/tstcluster/OCRFILE/REGISTRY.255.772207785









0 0
原创粉丝点击