Start GSD on all cluster nodes before invoking DBCA. If GSD is already running then stop it. Then go to ORACLE_HOME/bin and run gsd.bat and leave the window open throughout the process of using DBCA. Do this on all nodes. Ensure that the GSD service is configured to run under a user who is a member of DBA group. How? I DON’T THINK IT IS NECESSARY TO STOP A RUNNING GSD SERVICE. USE THE ONE THAT IS RUNNING.
25. Create O:oradata folder on shared disk on which we are going to create datafiles.
26. Run NET CONFIGURATION ASSISTANT on both nodes to ensure there are entries in the listener.ora. Choose a cluster configuration setup and configure listerners named LISTENERS_SIDprefix and tnsnames for local listener named. For example if SID is MYDB the listener should be LISTENERS_MYDB and the tnsnames should be LISTENER_MYDB1 and LISTENER_MYDB2 on both the nodes respectively. EXACT CONFIGURATIONS CONFIRM.
27. Add the following lines in dbca.bat in ORACLE_HOMEbin in line 40 now it will look as
“C:Program FilesOraclejre1.1.8BINJRE” –DBTRACING.ENABLED=true –DBTRACING.LEVEL=2
-DORACLE_HOME=”%OH%”………..
28. Now fire DBCA at command prompt as dbca –datafileDestination O:oradata >dbca_trace.txt.
29.Check tnsnames and listener entries before firing finish and match them with local_listener specified in initialization parameters visible from DBCA. Set open_cursors for PIDB and PIHIST to 1000. Keep the redolog size to 10m as dataguard may be setup later.
30. It is advisable to select create database scripts option and copy them to a safe location before canceling DBCA if it fails and use them to create the database. Do not enable archiving now.
31. If you get –specified operator does not exist- error when creating a database. Ignore the error. After creating the database run prvtxml.plb scipt and utlrp.sql scripts.
32. Shutdown the database on both nodes and create pfile from spfile on node1. Add archiving parameters and set cluter_database=false and cluster_database_instance=1. Mount the database on node1. Fire the archive database archivelog. Shut down the database.
33. Change back the cluster parameters in initsid.ora file. Create spfile fom pfile and startup the database.
34. startup database on both nodes. CREATE TABLESPACE PIDB/PIHIST/PDONDS DATAFILE ‘
35. Create users and give connect, resource, dba privilege to them.
check the size of the datafile to create
36. Reset MSDTC service to auto start.
37. Copy the remaining 3 files of step no 12 to location WIN_HOMEsystem32osd9icfs directory.
38. In case manual database is to be created dependency should be created between OracleService and OracleCMService. Dependencies can be viewed in the registry by running:
C:> regedit
Once in thr registry go to:
HKLMSystemCurrentControlSetServicesOracleService
Highlight the OracleService
To create dependency:
C:>createDep /s OracleServiceRACDB1 /d OracleCMService9i on node1
And on node2
C:>createDep /s OracleServiceRACDB2 /d OracleCMService9i on node1
Manual Creation of database on RAC: This is required when DBCA fails for any reason. In any case always select the option of creating scripts before creating a database. When DBCA fails and you abort then before pressing abort button rename the scripts folder in admin to .old so that it is not deleted during the rollback operation after canceling DBCA. If DBCA is not invoked at all in that case you have to type all the text or get scripts emailed to client site.
1. Copy the init.ora file in the dbs directory after making client site specific changes in it. Some parameters of interest in this file are
Cluster_database=true cluster_database_instances=2
Remote_listener=LISTENER_RAC this is an important parameter as this parameter requires a corresponding entry in the tnsnames.ora file
Instance specific parameters in the file are. As of now we are only interested with the primary node i.e. node1.
Instance_name=RAC1
Instance_NUMBER=1
Local_listener=LISTENER_RAC1
Thread=1
Undo_tablespace=UNDOTBS1
Modify the create database command.If raw devices are being used they must be pre-created.
2. Add the entries in tnsnames.ora file on both the nodes i.e. entries for remote and local listener. Create node specific entries in the listener.ora file and start the listener. Check the entries have been accepted by giving lsnrctl stat on both the nodes.
3. On both the nodes create instance specific password files. On windows machines create the Oracleservice1 and 2 on both nodes respectively and create the relevant dependency as given above.
4. On node one connect as set oracle sid and connect as sysdba to an idle instance. Give startup nomount using the init file you have prepared.
5. Fire the create database command.
6. After database creation create users table space. Create temporary tablespace TEMP.
7. Now create the second undo tablespace UNDOTBS2 that will be used by node2.
8. Run CATALOG.SQL, CATPROC.SQL, CATPARR.SQL
9. Edit the init.ora file on node2 to include parameters for node2.
instance_name=RAC2
instane_number=2
local_listener=LISTENER_RAC2
thread=2
undo_tablespace=UNDOTBS2
10. On node1 run the following command
Alter database add logfile thread 2
Group 3 (‘/dev/RAC/redo2_01_100.dbf’) size 100M,
Group 4 (‘/dev/RAC/redo2_02_100.dbf’) size 100M;
Alter database enable public thread 2;
11. Now create spfile from pfile on shared disk.
12. create initsid.ora file on both the nodes and keep pointers to the shared spfile as spfile=’/dev/RAC/spfile
13. The init files prepared originally may be removed.
14. Shut down and start the database from both the nodes to check if it can be stated using the spfile by just giving a startup.