Hey all!

In this blog post we’ll basically check what is the content for DiskGroup that was created by default when you install Oracle Grid Infrastructure in a Standalone Cluster configuration.

This post applies to:

Versions:

  • 12.2.0.1;
  • 18c;
  • 19c.

Environments:

  • OnPremises;
  • Cloud.

When you install cluster, you can create a separated DiskGroup for GIMR (Grid Infrastructure Management Repository). In this post we will consider that you may not created a separated DiskGroup for GIMR, so, GIMR will be stored in the DiskGroup created by default when you install GI.

Well, with this explained, let’s identify what are the disk space requirements to configure the diskgroup that will be created by default when you install GI.

Let’s call this default DiskGroup as OBQ_GRID1. Just for illustrate.

I ALWAYS do recommend that you create this default DiskGroup using NORMAL or HIGH redundancy. Why?

  • When you create DiskGroup OBQ_GRID with EXTERNAL redundancy, cluster will create only 1 Voting Disk;
  • When you create DiskGroup OBQ_GRID with NORMAL redundancy, cluster will create 3 Voting Disks;
  • When you create DiskGroup OBQ_GRID with HIGH redundancy, cluster will create 5 Voting Disks.

Voting Disk is a key component of Clusterware and its failure can lead to inoperability of cluster. Well. it’s a little bit old, but you can read something more about Voting Disk in this post that I published in my blog 9 years ago, when I posted some articles about Cluster 10g Release 2. The post is in Brazilian Portuguese. Sorry about that:

Oracle Clusterware – Arquitetura – Parte 2 – Principais Arquivos: Voting Disk e OCR

As we already know that this file is a key component of Clusterware, and as a key component, we need to ensure that we have some redundancy on it. To achieve this goal you need to create DiskGroup with HIGH or NORMAL redundancy:

You also can check this on official documentation:

With this item also clarified. Let’s check what is the content for our default DiskGroup.

With the grid user:

[grid@dbnode01 ~]$ asmcmd
ASMCMD> find +obq_grid1 *
+obq_grid1/ASM/
+obq_grid1/ASM/DATAFILE/
+obq_grid1/ASM/DATAFILE/sysaux.20190613142557.dbf.258.1010845615
+obq_grid1/ASM/DATAFILE/sysaux.20190613142557.dbf.263.1010845627
+obq_grid1/ASM/DATAFILE/sysaux.20190613142557.dbf.268.1010845639
+obq_grid1/ASM/DATAFILE/syscalogdata.20190613142557.dbf.270.1010845653
+obq_grid1/ASM/DATAFILE/sysgridhomedata.20190613142557.dbf.269.1010845649
+obq_grid1/ASM/DATAFILE/sysmgmtdata.20190613142557.dbf.281.1010845665
+obq_grid1/ASM/DATAFILE/sysmgmtdatachafix.20190613142557.dbf.279.1010845853
+obq_grid1/ASM/DATAFILE/sysmgmtdatadb.20190613142557.dbf.280.1010845687
+obq_grid1/ASM/DATAFILE/sysmgmtdataq.20190613142557.dbf.278.1010845951
+obq_grid1/ASM/DATAFILE/system.20190613142557.dbf.259.1010845605
+obq_grid1/ASM/DATAFILE/system.20190613142557.dbf.262.1010845633
+obq_grid1/ASM/DATAFILE/system.20190613142557.dbf.267.1010845645
+obq_grid1/ASM/DATAFILE/undotbs1.20190613142557.dbf.261.1010845621
+obq_grid1/ASM/DATAFILE/undotbs1.20190613142557.dbf.264.1010845625
+obq_grid1/ASM/DATAFILE/undotbs1.20190613142557.dbf.265.1010845637
+obq_grid1/ASM/DATAFILE/users.20190613142557.dbf.266.1010845649
+obq_grid1/ASM/PASSWORD/
+obq_grid1/ASM/PASSWORD/pwdasm.256.1010754289
+obq_grid1/ASM/PASSWORD/pwdasm.257.1010754749
+obq_grid1/_MGMTDB/
+obq_grid1/_MGMTDB/8B23E8D5953F1741E053A138A8C05D72/
+obq_grid1/_MGMTDB/8B23E8D5953F1741E053A138A8C05D72/TEMPFILE/
+obq_grid1/_MGMTDB/8B23E8D5953F1741E053A138A8C05D72/TEMPFILE/TEMP.282.1010846037
+obq_grid1/_MGMTDB/8B24053869A92CB2E053A138A8C08983/
+obq_grid1/_MGMTDB/8B24053869A92CB2E053A138A8C08983/TEMPFILE/
+obq_grid1/_MGMTDB/8B24053869A92CB2E053A138A8C08983/TEMPFILE/TEMP.283.1010846043
+obq_grid1/_MGMTDB/CONTROLFILE/
+obq_grid1/_MGMTDB/CONTROLFILE/Current.277.1010845967
+obq_grid1/_MGMTDB/CONTROLFILE/ctrl.20190613142557
+obq_grid1/_MGMTDB/DATAFILE/
+obq_grid1/_MGMTDB/DATAFILE/PDB$SEED/
+obq_grid1/_MGMTDB/DATAFILE/PDB$SEED/sysaux.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/PDB$SEED/system.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/PDB$SEED/undotbs1.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysaux.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/syscalogdata.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysgridhomedata.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysmgmtdata.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysmgmtdatachafix.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysmgmtdatadb.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysmgmtdataq.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/system.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/undotbs1.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/users.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/sysaux.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/system.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/undotbs1.20190613142557.dbf
+obq_grid1/_MGMTDB/ONLINELOG/
+obq_grid1/_MGMTDB/ONLINELOG/group_1.276.1010845969
+obq_grid1/_MGMTDB/ONLINELOG/group_2.275.1010845969
+obq_grid1/_MGMTDB/ONLINELOG/group_3.273.1010845983
+obq_grid1/_MGMTDB/ONLINELOG/group_4.272.1010845985
+obq_grid1/_MGMTDB/ONLINELOG/group_5.271.1010845987
+obq_grid1/_MGMTDB/ONLINELOG/redo1.20190613142557.log
+obq_grid1/_MGMTDB/ONLINELOG/redo2.20190613142557.log
+obq_grid1/_MGMTDB/ONLINELOG/redo3.20190613142557.log
+obq_grid1/_MGMTDB/ONLINELOG/redo4.20190613142557.log
+obq_grid1/_MGMTDB/PARAMETERFILE/
+obq_grid1/_MGMTDB/PARAMETERFILE/spfile.20190613142557
+obq_grid1/_MGMTDB/PARAMETERFILE/spfile.260.1010845565
+obq_grid1/_MGMTDB/TEMPFILE/
+obq_grid1/_MGMTDB/TEMPFILE/PDB$SEED/
+obq_grid1/_MGMTDB/TEMPFILE/TEMP.274.1010846033
+obq_grid1/_MGMTDB/TEMPFILE/crsdrlq2db/
+obq_grid1/crsdrlq2db/
+obq_grid1/crsdrlq2db/ASMPARAMETERFILE/
+obq_grid1/crsdrlq2db/ASMPARAMETERFILE/REGISTRY.253.1010754285
+obq_grid1/crsdrlq2db/OCRFILE/
+obq_grid1/crsdrlq2db/OCRFILE/REGISTRY.255.1010754291
+obq_grid1/orapwasm
+obq_grid1/orapwasm_backup

Let’s separate the content by directory to make easier to understand:

In the list below we can see the datafilee for GIMR (MGMTDB):

+obq_grid1/ASM/
+obq_grid1/ASM/DATAFILE/
+obq_grid1/ASM/DATAFILE/sysaux.20190613142557.dbf.258.1010845615
+obq_grid1/ASM/DATAFILE/sysaux.20190613142557.dbf.263.1010845627
+obq_grid1/ASM/DATAFILE/sysaux.20190613142557.dbf.268.1010845639
+obq_grid1/ASM/DATAFILE/syscalogdata.20190613142557.dbf.270.1010845653
+obq_grid1/ASM/DATAFILE/sysgridhomedata.20190613142557.dbf.269.1010845649
+obq_grid1/ASM/DATAFILE/sysmgmtdata.20190613142557.dbf.281.1010845665
+obq_grid1/ASM/DATAFILE/sysmgmtdatachafix.20190613142557.dbf.279.1010845853
+obq_grid1/ASM/DATAFILE/sysmgmtdatadb.20190613142557.dbf.280.1010845687
+obq_grid1/ASM/DATAFILE/sysmgmtdataq.20190613142557.dbf.278.1010845951
+obq_grid1/ASM/DATAFILE/system.20190613142557.dbf.259.1010845605
+obq_grid1/ASM/DATAFILE/system.20190613142557.dbf.262.1010845633
+obq_grid1/ASM/DATAFILE/system.20190613142557.dbf.267.1010845645
+obq_grid1/ASM/DATAFILE/undotbs1.20190613142557.dbf.261.1010845621
+obq_grid1/ASM/DATAFILE/undotbs1.20190613142557.dbf.264.1010845625
+obq_grid1/ASM/DATAFILE/undotbs1.20190613142557.dbf.265.1010845637
+obq_grid1/ASM/DATAFILE/users.20190613142557.dbf.266.1010845649

In the list below we can see the password file for ASM:

+obq_grid1/ASM/PASSWORD/
+obq_grid1/ASM/PASSWORD/pwdasm.256.1010754289
+obq_grid1/ASM/PASSWORD/pwdasm.257.1010754749

In the list below we can see the datafiles, tempfiles, controlfiles and online redo logs for GIMR/MGMTDB:

+obq_grid1/_MGMTDB/
+obq_grid1/_MGMTDB/8B23E8D5953F1741E053A138A8C05D72/
+obq_grid1/_MGMTDB/8B23E8D5953F1741E053A138A8C05D72/TEMPFILE/
+obq_grid1/_MGMTDB/8B23E8D5953F1741E053A138A8C05D72/TEMPFILE/TEMP.282.1010846037
+obq_grid1/_MGMTDB/8B24053869A92CB2E053A138A8C08983/
+obq_grid1/_MGMTDB/8B24053869A92CB2E053A138A8C08983/TEMPFILE/
+obq_grid1/_MGMTDB/8B24053869A92CB2E053A138A8C08983/TEMPFILE/TEMP.283.1010846043
+obq_grid1/_MGMTDB/CONTROLFILE/
+obq_grid1/_MGMTDB/CONTROLFILE/Current.277.1010845967
+obq_grid1/_MGMTDB/CONTROLFILE/ctrl.20190613142557
+obq_grid1/_MGMTDB/DATAFILE/
+obq_grid1/_MGMTDB/DATAFILE/PDB$SEED/
+obq_grid1/_MGMTDB/DATAFILE/PDB$SEED/sysaux.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/PDB$SEED/system.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/PDB$SEED/undotbs1.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysaux.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/syscalogdata.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysgridhomedata.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysmgmtdata.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysmgmtdatachafix.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysmgmtdatadb.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/sysmgmtdataq.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/system.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/undotbs1.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db/users.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/sysaux.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/system.20190613142557.dbf
+obq_grid1/_MGMTDB/DATAFILE/undotbs1.20190613142557.dbf
+obq_grid1/_MGMTDB/ONLINELOG/
+obq_grid1/_MGMTDB/ONLINELOG/group_1.276.1010845969
+obq_grid1/_MGMTDB/ONLINELOG/group_2.275.1010845969
+obq_grid1/_MGMTDB/ONLINELOG/group_3.273.1010845983
+obq_grid1/_MGMTDB/ONLINELOG/group_4.272.1010845985
+obq_grid1/_MGMTDB/ONLINELOG/group_5.271.1010845987
+obq_grid1/_MGMTDB/ONLINELOG/redo1.20190613142557.log
+obq_grid1/_MGMTDB/ONLINELOG/redo2.20190613142557.log
+obq_grid1/_MGMTDB/ONLINELOG/redo3.20190613142557.log
+obq_grid1/_MGMTDB/ONLINELOG/redo4.20190613142557.log
+obq_grid1/_MGMTDB/PARAMETERFILE/
+obq_grid1/_MGMTDB/PARAMETERFILE/spfile.20190613142557
+obq_grid1/_MGMTDB/PARAMETERFILE/spfile.260.1010845565
+obq_grid1/_MGMTDB/TEMPFILE/
+obq_grid1/_MGMTDB/TEMPFILE/PDB$SEED/
+obq_grid1/_MGMTDB/TEMPFILE/TEMP.274.1010846033
+obq_grid1/_MGMTDB/TEMPFILE/crsdrlq2db/

We have something weird here: if the first list shows the files for GIMR/MGMTDB, why do we have the same content in the above list? Well, all datafiles listed in +obq_grid1/mgmtdb/datafile are aliases that are pointing to the physical files themselves in +obq_grid1/asm/datafile. Let’s check?

ASMCMD> cd +obq_grid1/_MGMTDB/DATAFILE/
ASMCMD> ls -l
Type Redund Striped Time Sys Name
N PDB$SEED/
N crsdrlq2db/
DATAFILE MIRROR COARSE JUN 13 14:00:00 N sysaux.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/sysaux.20190613142557.dbf.258.1010845615
DATAFILE MIRROR COARSE JUN 13 14:00:00 N system.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/system.20190613142557.dbf.259.1010845605
DATAFILE MIRROR COARSE JUN 13 14:00:00 N undotbs1.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/undotbs1.20190613142557.dbf.261.1010845621
ASMCMD> cd +obq_grid1/_MGMTDB/DATAFILE/PDB$SEED/
ASMCMD> ls -l
Type Redund Striped Time Sys Name
DATAFILE MIRROR COARSE JUN 13 14:00:00 N sysaux.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/sysaux.20190613142557.dbf.263.1010845627
DATAFILE MIRROR COARSE JUN 13 14:00:00 N system.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/system.20190613142557.dbf.262.1010845633
DATAFILE MIRROR COARSE JUN 13 14:00:00 N undotbs1.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/undotbs1.20190613142557.dbf.264.1010845625
ASMCMD> cd +obq_grid1/_MGMTDB/DATAFILE/crsdrlq2db
ASMCMD> ls -l
Type Redund Striped Time Sys Name
DATAFILE MIRROR COARSE JUN 13 14:00:00 N sysaux.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/sysaux.20190613142557.dbf.268.1010845639
DATAFILE MIRROR COARSE JUN 13 14:00:00 N syscalogdata.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/syscalogdata.20190613142557.dbf.270.1010845653
DATAFILE MIRROR COARSE JUN 13 14:00:00 N sysgridhomedata.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/sysgridhomedata.20190613142557.dbf.269.1010845649
DATAFILE MIRROR COARSE JUN 13 14:00:00 N sysmgmtdata.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/sysmgmtdata.20190613142557.dbf.281.1010845665
DATAFILE MIRROR COARSE JUN 13 14:00:00 N sysmgmtdatachafix.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/sysmgmtdatachafix.20190613142557.dbf.279.1010845853
DATAFILE MIRROR COARSE JUN 13 14:00:00 N sysmgmtdatadb.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/sysmgmtdatadb.20190613142557.dbf.280.1010845687
DATAFILE MIRROR COARSE JUN 13 14:00:00 N sysmgmtdataq.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/sysmgmtdataq.20190613142557.dbf.278.1010845951
DATAFILE MIRROR COARSE JUN 13 14:00:00 N system.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/system.20190613142557.dbf.267.1010845645
DATAFILE MIRROR COARSE JUN 13 14:00:00 N undotbs1.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/undotbs1.20190613142557.dbf.265.1010845637
DATAFILE MIRROR COARSE JUN 13 14:00:00 N users.20190613142557.dbf => +OBQ_GRID1/ASM/DATAFILE/users.20190613142557.dbf.266.1010845649

Well, we can conclude that all the files found in the first list are the same files for the above block/list.

Continuing in the list, below we can see ASM SPFILE and also OCR:

+obq_grid1/crsdrlq2db/
+obq_grid1/crsdrlq2db/ASMPARAMETERFILE/
+obq_grid1/crsdrlq2db/ASMPARAMETERFILE/REGISTRY.253.1010754285
+obq_grid1/crsdrlq2db/OCRFILE/
+obq_grid1/crsdrlq2db/OCRFILE/REGISTRY.255.1010754291

In the list below we can see the alias for ASM password file. This alias is pointing to the password file itself in a different directory:

 +obq_grid1/orapwasm
 +obq_grid1/orapwasm_backup

Let’s check if this file above is really the alias?

ASMCMD> ls -l +obq_grid1/orapwasm
Type Redund Striped Time Sys Name
PASSWORD HIGH COARSE JUN 12 13:00:00 N orapwasm => +OBQ_GRID1/ASM/PASSWORD/pwdasm.256.1010754289

Well, in this post we just identified what is the content and the files stored in ASM DiskGroup created by default when you install GI.

In the next post we will continue to exploring and working with GRID DiskGroup.

Peace!

Vinicius

Reference: