We are trying to create a DB on a new RAC enviroment in silent mode like:

[oracle@testserver1 bin]$	./dbca \
	-ignorePreReqs \
	-ignorePrereqFailure \
	-silent \
	-createDatabase \
	-templateName General_Purpose.dbc \
	-sid TESTDB \
	-gdbName TESTDB \
	-SysPassword xxxxxxxx \
	-SystemPassword xxxxxxxx \
	-emConfiguration NONE \
	-storageType ASM \
	-asmSysPassword xxxxxxxx \
	-diskGroupName DATA \
	-recoveryGroupName FBRA \
	-initParams db_unique_name=TESTDB \
	-databaseConfigType RAC \
	-characterSet AL32UTF8 \
	-nodelist testserver1,testserver2	

But DBCA was failing with:

Prepare for db operation
4% complete
Creating and starting Oracle instance
5% complete
[FATAL] ORA-01501: CREATE DATABASE failed
ORA-00200: control file could not be created
ORA-00202: control file: '+DATA'
ORA-17502: ksfdcre:4 Failed to create file +DATA
ORA-15001: diskgroup "DATA" does not exist or is not mounted
ORA-01017: invalid username/password; logon denied

8% complete
100% complete
[FATAL] ORA-01501: CREATE DATABASE failed
ORA-00200: control file could not be created
ORA-00202: control file: '+DATA'
ORA-17502: ksfdcre:4 Failed to create file +DATA
ORA-15001: diskgroup "DATA" does not exist or is not mounted
ORA-01017: invalid username/password; logon denied

4% complete
0% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/TESTDB/TESTDB4.log" for further details.
[oracle@testserver1 bin]$	

In this case, we have a separate role for GRID (as oragrid user) and RDBMS (as oracle user), so we checked:

1:- ASM disks are under the right group name (asmadmin this case):

	[root@testserver1 ~]#  oracleasm configure
	ORACLEASM_ENABLED=true
	ORACLEASM_UID=oragrid
	ORACLEASM_GID=asmadmin
	ORACLEASM_SCANBOOT=true
	ORACLEASM_SCANORDER=""
	ORACLEASM_SCANEXCLUDE=""
	ORACLEASM_SCAN_DIRECTORIES=""
	ORACLEASM_USE_LOGICAL_BLOCK_SIZE="false"
	[root@testserver1 ~]#
	
	[root@testserver1 ~]#  ll /dev/oracleasm/disks/
	total 0
	brw-rw----. 1 oragrid asmadmin 202,  113 Oct  6  2022 DATA1
	brw-rw----. 1 oragrid asmadmin 202,  129 Oct  6  2022 DATA2
	brw-rw----. 1 oragrid asmadmin 202,  145 Oct  6  2022 DATA3
	brw-rw----. 1 oragrid asmadmin 202,  161 Oct  6  2022 DATA4
	brw-rw----. 1 oragrid asmadmin 202,  241 Oct  6  2022 DATA5
	brw-rw----. 1 oragrid asmadmin 202, 4097 Oct  6  2022 DATA6
	brw-rw----. 1 oragrid asmadmin 202, 4353 Oct  6  2022 DATA7
	brw-rw----. 1 oragrid asmadmin 202, 4609 Oct  6  2022 DATA8
	brw-rw----. 1 oragrid asmadmin 202,  177 Oct  6  2022 FBRA1
	brw-rw----. 1 oragrid asmadmin 202,  193 Oct  6  2022 FBRA2
	brw-rw----. 1 oragrid asmadmin 202,  209 Oct  6  2022 FBRA3
	brw-rw----. 1 oragrid asmadmin 202,  225 Oct  6  2022 FBRA4
	brw-rw----. 1 oragrid asmadmin 202, 4865 Oct  6  2022 FBRA5
	brw-rw----. 1 oragrid asmadmin 202, 5121 Oct  6  2022 FBRA6
	brw-rw----. 1 oragrid asmadmin 202, 5377 Oct  6  2022 FBRA7
	brw-rw----. 1 oragrid asmadmin 202, 5633 Oct  6  2022 FBRA8
	brw-rw----. 1 oragrid asmadmin 202,   97 Oct  6  2022 MGMT1
	brw-rw----. 1 oragrid asmadmin 202,   81 Oct  6  2022 OCRVOTE1
	[root@testserver1 ~]#

2:- RDBMS oracle binary matches asmadmin group:

	[root@testserver1 ~]# ls -tlr /u01/app/oracle/product/19.0.0/dbhome_1/bin/oracle
	-rwsr-s--x. 1 oracle asmadmin 447373320 Sep 24  2021 /u01/app/oracle/product/19.0.0/dbhome_1/bin/oracle
	[root@testserver1 ~]#

3:- Oracle account had the right groups assigned:

	[oracle@testserver1 ~]$ groups
	oinstall dba oper backupdba dgdba kmdba racdba asmdba asmadmin
	[oracle@testserver1 ~]$

It turns out, even though groups are correctly reported on “groups” output, oinstall was not on /etc/group as assigned to oracle:

	[oracle@testserver1 ~]$ grep oracle /etc/group
	wheel:x:10:unixadmin,oracle,oragrid
	asmdba:x:1003:oracle,oragrid
	asmadmin:x:1004:oracle,oragrid
	dba:x:1005:oracle,oragrid
	oper:x:1006:oracle
	backupdba:x:1007:oracle
	dgdba:x:1008:oracle
	kmdba:x:1009:oracle
	racdba:x:1010:oracle
	[oracle@testserver1 ~]$

So we added like:

	[root@testserver1 ~]# grep -i oracle /etc/group
	wheel:x:10:unixadmin,oracle,oragrid
	oinstall:x:1001:oracle,oragrid   <<----
	asmdba:x:1003:oracle,oragrid
	asmadmin:x:1004:oracle,oragrid
	dba:x:1005:oracle,oragrid
	oper:x:1006:oracle
	backupdba:x:1007:oracle
	dgdba:x:1008:oracle
	kmdba:x:1009:oracle
	racdba:x:1010:oracle
	[root@testserver1 ~]#

After this change, DBCA can create DB with no issues:

	[oracle@testserver1 bin]$	./dbca \
	-ignorePreReqs \
	-ignorePrereqFailure \
	-silent \
	-createDatabase \
	-templateName General_Purpose.dbc \
	-sid TESTDB \
	-gdbName TESTDB \
	-SysPassword xxxxxxxx \
	-SystemPassword xxxxxxxx \
	-emConfiguration NONE \
	-storageType ASM \
	-asmSysPassword xxxxxxxx \
	-diskGroupName DATA \
	-recoveryGroupName FBRA \
	-initParams db_unique_name=TESTDB \
	-databaseConfigType RAC \
	-characterSet AL32UTF8 \
	-nodelist testserver1,testserver2	
	Prepare for db operation
	....
	....
	89% complete
	Executing Post Configuration Actions
	100% complete
	Database creation complete. For details check the logfiles at:
	/u01/app/oracle/cfgtoollogs/dbca/TESTDB.
	Database Information:
	Global Database Name:TESTDB
	System Identifier(SID) Prefix:TESTDB
	Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/TESTDB/TESTDB6.log" for further details.
	[oracle@testserver11 bin]$
Last modified: 29 April 2023

Author

Comments

Write a Reply or Comment

Your email address will not be published.