Today a friend of mine pinged me an error while he was trying to create database using DBCA from 11.2.0.3 RDBMS home on an exadata box.Screenshot of the error is below
The error was easy to understand as compatible parameter set in the database initialization parameter was lower than the compatible.rdbms set for the diskgroup in ASM. The db compatible parameter was set to 11.2.0.0.0 whereas for the diskgroup compatible.rdbms was set to 11.2.0.2.0.
So checking the ASM instance showed
SYS@+ASM7 > col COMPATIBILITY form a10 SYS@+ASM7 > col DATABASE_COMPATIBILITY form a10 SYS@+ASM7 > col NAME form a20 SYS@+ASM7 > select group_number, name, compatibility, database_compatibility from v$asm_diskgroup; GROUP_NUMBER NAME COMPATIBIL DATABASE_C ------------ ------------------ ---------- ---------- 1 DATA_O1 11.2.0.2.0 11.2.0.2.0 2 RECO_O1 11.2.0.2.0 11.2.0.2.0
The compatible.asm diskgroup attribute controls the format of the ASM diskgroup metadata. Only ASM instances with a software version equal to or greater than compatible.asm can mount the diskgroup.
The compatible.rdbms diskgroup attribute determines the format of ASM files themselves. The diskgroup can be accessed by any database instance with a compatible init.ora parameter set equal to or higher than the compatible.rdbms attribute.
DBCA (choose General Purpose) doesn’t provide any screen wherein we can change the parameter value. But as we want to create the database using dbca, we need to change the parameter value in the template stored in ORACLE_HOME/assistants/dbca/templates
xxxxxx: (test1) /u01/oraadmin/test/admin> cd $ORACLE_HOME xxxxxx: (test1) /u01/app/oracle/product/11.2.0.3/dbhome_1> cd assistants/dbca/templates/ xxxxxx: (test1) /u01/app/oracle/product/11.2.0.3/dbhome_1/assistants/dbca/templates> ls -lrt total 292272 -rwxrw-r-- 1 oracle oinstall 83 Oct 4 07:25 create_bct.sql -rwxrw-r-- 1 oracle oinstall 718 Oct 4 07:25 crt_cluster_interconnect.sql -rwxrw-r-- 1 oracle oinstall 5104 Oct 4 07:25 Data_Warehouse.dbc -rwxrw-r-- 1 oracle oinstall 122 Oct 4 07:25 drop_cluster_interconnect.sql -rwxrw-r-- 1 oracle oinstall 13756 Oct 4 07:25 dw_x2_2.dbt -rwxrw-r-- 1 oracle oinstall 178 Oct 4 07:25 exadata_miscellaneous.sql -rwxrw-r-- 1 oracle oinstall 1507328 Oct 4 07:25 example.dmp -rwxrw-r-- 1 oracle oinstall 21889024 Oct 4 07:25 example01.dfb -rwxrw-r-- 1 oracle oinstall 4984 Oct 4 07:25 General_Purpose.dbc -rwxrw-r-- 1 oracle oinstall 803 Oct 4 07:25 logs.sql -rwxrw-r-- 1 oracle oinstall 4104 Oct 4 07:25 logs.wk1 -rwxrw-r-- 1 oracle oinstall 320 Oct 4 07:25 logs_to_add.lst -rwxrw-r-- 1 oracle oinstall 311 Oct 4 07:25 logs_to_add.sql -rwxrw-r-- 1 oracle oinstall 8208 Oct 4 07:25 logs_to_add.wk1 -rwxrw-r-- 1 oracle oinstall 11489 Oct 4 07:25 New_Database.dbt -rwxrw-r-- 1 oracle oinstall 13558 Oct 4 07:25 oltp_x2_2.dbt -rwxrw-r-- 1 oracle oinstall 369 Oct 4 07:25 recreate_temp.sql -rwxrw-r-- 1 oracle oinstall 9748480 Oct 4 07:26 Seed_Database.ctl -rwxrw-r-- 1 oracle oinstall 265691136 Oct 4 07:26 Seed_Database.dfb -rwxrw-r-- 1 oracle oinstall 761 Oct 4 07:26 set_cluster_interconnect.sql -rwxrw-r-- 1 oracle oinstall 18 Oct 4 07:26 set_fra_size.lst -rwxrw-r-- 1 oracle oinstall 806 Oct 4 07:26 set_fra_size.sql -rwxrw-r-- 1 oracle oinstall 513 Oct 4 07:26 set_fra_size.wk1 -rwxrw-r-- 1 oracle oinstall 199 Oct 4 07:26 set_use_large_pages_false.sql xxxxxx: (test1) /u01/app/oracle/product/11.2.0.3/dbhome_1/assistants/dbca/templates>
As we choose the General Purpose template, we need to edit the value in General_Purpose.dbc and search of compatible parameter and you would see
.............. initParam name="compatible" value="11.2.0.0.0"/ .............. ..............
Edit the value to either equal to compatible.rdbms of diskgroup or higher. In our case, we set it “11.2.0.3” and dbca didn’t threw error the next time :)
To know more on ASM diskgroup compatibility read
http://www.pythian.com/news/1078/oracle-11g-asm-diskgroup-compatibility/
Filed under: 11gR2, ASM, dbca, General, Oracle Tagged: 11gR2, asm, DBCA, diskgroup, Diskgroup is not compatible for database usage
