Most default installation guides for Grid Infrastructure will have you creating a DATA Disk Group during the install. This results in the OCR, the Vote Disk and MGMTDB being created in the same DATA Disk Group.
The proper installation is to have OCR and Vote Disk separated from DATA. If you create a different Disk Group during the installation, you would have all three components (MGMTDB is new in 12c, did not exist in 11g) and you can have these components properly placed in a non-DATA Disk Group that you create as the default.
But what if they have already been located in DATA ? Can you relocate them to another Disk Group ?
I start with creating a new Disk Group called OCRVOTE on an existing unused ASM Disk.
I have identified the ASM Disk on /dev/asm-disk4 as available and created a DiskGroup on it. I have to mount the DiskGroup on the second node as well. (If I don't mount the DiskGroup on the second node collabn2, I get errors
"PROT-30: The Oracle Cluster Registry location to be added is not usable
PROC-50: The Oracle Cluster Registry location to be added is inaccessible on nodes collabn2."
when attempting to add the OCR on the DiskGroup).
Next, I plan to relocate the OCR which is currently in the DATA DiskGroup.
I first used OCRCHECK ("ocrcheck" at the commandline) to list the existing OCR location. I then used root and OCRCONFIG -ADD to add +OCRVOTE as a location and verified it with OCRCHECK. I then used OCRCONFIG -DELETE ("ocrconfig -add" and "ocrconfig -delete") to delete the old location.
I could have used "ocrconfig -replace" to replace the OCR location but I prefer ADD and DELETE.
How do I relocate the VoteDisk ? Since I am using a single DiskGroup and External Redundancy with only 1 Failure Group, I have only 1 VoteDisk.
With ASM as the location for VoteDisk, I cannot use CRSCTL ADD VOTEDISK but have to use CRSCTL REPLACE VOTEDISK.
So, I have added a new DiskGroup called OCRVOTE and relocated both OCR and VoteDisk to this new DiskGroup (on disk /dev/asm-disk4).
Can I relocate +MGMTDB ? I am open to suggestions.
.
.
.
The proper installation is to have OCR and Vote Disk separated from DATA. If you create a different Disk Group during the installation, you would have all three components (MGMTDB is new in 12c, did not exist in 11g) and you can have these components properly placed in a non-DATA Disk Group that you create as the default.
But what if they have already been located in DATA ? Can you relocate them to another Disk Group ?
I start with creating a new Disk Group called OCRVOTE on an existing unused ASM Disk.
[root@collabn1 ~]# su - oracle [oracle@collabn1 ~]$ . oraenv ORACLE_SID = [oracle] ? +ASM1 The Oracle base has been set to /u01/app/oracle [oracle@collabn1 ~]$ sqlplus '/ as sysasm' SQL*Plus: Release 12.1.0.2.0 Production on Mon Jan 30 22:34:38 2017 Copyright (c) 1982, 2014, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production With the Real Application Clusters and Automatic Storage Management options SQL> SQL> set pages600 SQL> col name format a12 SQL> col path format a16 SQL> select name, path, state, group_number, disk_number 2 from v$asm_disk 3 order by 4,5,1 4 / NAME PATH STATE GROUP_NUMBER DISK_NUMBER ------------ ---------------- -------- ------------ ----------- /dev/asm-disk4 NORMAL 0 0 DATA_0000 /dev/asm-disk1 NORMAL 1 0 DATA_0001 /dev/asm-disk2 NORMAL 1 1 DATA_0002 /dev/asm-disk5 NORMAL 1 2 FRA_0000 /dev/asm-disk3 NORMAL 2 0 SQL> SQL> create diskgroup OCRVOTE external redundancy disk '/dev/asm-disk4'; Diskgroup created. SQL> SQL> select name, path, state, group_number, disk_number 2 from v$asm_disk 3 order by 4,5,1 4 / NAME PATH STATE GROUP_NUMBER DISK_NUMBER ------------ ---------------- -------- ------------ ----------- DATA_0000 /dev/asm-disk1 NORMAL 1 0 DATA_0001 /dev/asm-disk2 NORMAL 1 1 DATA_0002 /dev/asm-disk5 NORMAL 1 2 FRA_0000 /dev/asm-disk3 NORMAL 2 0 OCRVOTE_0000 /dev/asm-disk4 NORMAL 3 0 SQL> SQL> alter diskgroup OCRVOTE set attribute 'COMPATIBLE.ASM' = '12.1'; Diskgroup altered. SQL>
I have identified the ASM Disk on /dev/asm-disk4 as available and created a DiskGroup on it. I have to mount the DiskGroup on the second node as well. (If I don't mount the DiskGroup on the second node collabn2, I get errors
"PROT-30: The Oracle Cluster Registry location to be added is not usable
PROC-50: The Oracle Cluster Registry location to be added is inaccessible on nodes collabn2."
when attempting to add the OCR on the DiskGroup).
[oracle@collabn2 trace]$ sqlplus SQL*Plus: Release 12.1.0.2.0 Production on Mon Jan 30 22:52:18 2017 Copyright (c) 1982, 2014, Oracle. All rights reserved. Enter user-name: / as sysasm Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production With the Real Application Clusters and Automatic Storage Management options SQL> alter diskgroup OCRVOTE mount; Diskgroup altered. SQL> set pages60 SQL> col name format a12 SQL> col path format a16 SQL> select name, path, state, group_number, disk_number 2 from v$asm_disk 3 order by 4,5,1 4 / NAME PATH STATE GROUP_NUMBER DISK_NUMBER ------------ ---------------- -------- ------------ ----------- DATA_0000 /dev/asm-disk1 NORMAL 1 0 DATA_0001 /dev/asm-disk2 NORMAL 1 1 DATA_0002 /dev/asm-disk5 NORMAL 1 2 FRA_0000 /dev/asm-disk3 NORMAL 2 0 OCRVOTE_0000 /dev/asm-disk4 NORMAL 3 0 SQL>
Next, I plan to relocate the OCR which is currently in the DATA DiskGroup.
SQL> exit Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production With the Real Application Clusters and Automatic Storage Management options [oracle@collabn1 ~]$ ocrcheck Status of Oracle Cluster Registry is as follows : Version : 4 Total space (kbytes) : 409568 Used space (kbytes) : 1688 Available space (kbytes) : 407880 ID : 827167720 Device/File Name : +DATA 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 [oracle@collabn1 ~]$ [oracle@collabn1 ~]$ su Password: [root@collabn1 oracle]# ocrconfig -add +OCRVOTE [root@collabn1 oracle]# ocrcheck Status of Oracle Cluster Registry is as follows : Version : 4 Total space (kbytes) : 409568 Used space (kbytes) : 1684 Available space (kbytes) : 407884 ID : 827167720 Device/File Name : +DATA Device/File integrity check succeeded Device/File Name : +OCRVOTE 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 [root@collabn1 oracle]# ocrconfig -delete +DATA [root@collabn1 oracle]# ocrcheck Status of Oracle Cluster Registry is as follows : Version : 4 Total space (kbytes) : 409568 Used space (kbytes) : 1684 Available space (kbytes) : 407884 ID : 827167720 Device/File Name : +OCRVOTE 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 [root@collabn1 oracle]#
I first used OCRCHECK ("ocrcheck" at the commandline) to list the existing OCR location. I then used root and OCRCONFIG -ADD to add +OCRVOTE as a location and verified it with OCRCHECK. I then used OCRCONFIG -DELETE ("ocrconfig -add" and "ocrconfig -delete") to delete the old location.
I could have used "ocrconfig -replace" to replace the OCR location but I prefer ADD and DELETE.
How do I relocate the VoteDisk ? Since I am using a single DiskGroup and External Redundancy with only 1 Failure Group, I have only 1 VoteDisk.
[root@collabn1 oracle]# crsctl query css votedisk ## STATE File Universal Id File Name Disk group -- ----- ----------------- --------- --------- 1. ONLINE 96fbcb40bfeb4ff7bf18881adcfef149 (/dev/asm-disk1) [DATA] Located 1 voting disk(s). [root@collabn1 oracle]# [root@collabn1 oracle]# crsctl replace votedisk +OCRVOTE Successful addition of voting disk a58b8b9d58064fb8bf6df0b3ee701e32. Successful deletion of voting disk 96fbcb40bfeb4ff7bf18881adcfef149. Successfully replaced voting disk group with +OCRVOTE. CRS-4266: Voting file(s) successfully replaced [root@collabn1 oracle]# [root@collabn1 oracle]# crsctl query css votedisk ## STATE File Universal Id File Name Disk group -- ----- ----------------- --------- --------- 1. ONLINE a58b8b9d58064fb8bf6df0b3ee701e32 (/dev/asm-disk4) [OCRVOTE] Located 1 voting disk(s). [root@collabn1 oracle]#
With ASM as the location for VoteDisk, I cannot use CRSCTL ADD VOTEDISK but have to use CRSCTL REPLACE VOTEDISK.
So, I have added a new DiskGroup called OCRVOTE and relocated both OCR and VoteDisk to this new DiskGroup (on disk /dev/asm-disk4).
Can I relocate +MGMTDB ? I am open to suggestions.
.
.
.