Controlfile multiplexing means to create copy of multiple controlfiles. Today we will learn its importance and how to do Controlfile multiplexing in Oracle database. As a DBA, we may face lots of issues like controlfile corruption or due to storage or File system failure etc. That is why we need controlfile multiplexing and it is always recommended to store them in different locations.
Steps to do Controlfile Multiplexing :
- Check the database role and which file it is running (pfile or spfile):
sho parameter spfile; select name,open_mode,database_role from v$database;
2. Check Controlfile before Multiplexing :
select NAME from v$controlfile;
3. Copy controlfile to other location and make it as different name :
Syntax : cp -p /Location_of_any_controlfile_/controlfile_name /location_of_new_controlfile/Controlfile_name Example : cp -p /u01/app/oracle/oradata/ORCLCDB/control01.ctl /u01/app/oracle/ctrl/control04.ctl
4. Create pfile from spfile and then edit in pfile :
Syntax : create pfile='ORACLEHOME_location/dbs/init_db_name.ora'; Example : create pfile='/u01/app/oracle/product/version/db_1/dbs/init_db_name.ora';
5. Save the init file and startup the database with pfile and check :
Syntax : startup pfile='ORACLE_HOME/dbs/init_db_name.ora'; Example : startup pfile='/u01/app/oracle/product/version/db_1/dbs/init_db_name.ora';
6. To reflect in spfile, bounce the database once again and check :
shut immediate ; startup;
select name from v$controlfile; sho parameter control;
So here are the steps for doing controlfile Multiplexing. Hope it helps !!