How To MULTIPLEX a CONTROL FILE using PFILE in Oracle Database

In the previous tutorial, we learnt how to multiplex control files using SPFILE in Oracle Database. Today we will focus on the second way which is multiplexing control file using PFILE. The name of the PFILE is INIT.ORA in Oracle Database ecosystem.

How to Multiplex The Control File In Oracle Database

Here I will demonstrate the steps of multiplexing control file using PFILE in Oracle Database.

First, Let’s check whether we are using PFILE or SPFILE.

Step 1: Connect with the database

C> SQLPLUS / as SYSDBA

Step 2: Check if the database is using SPFILE or PFILE

SQL> SHOW PARAMETER spfile;

If the database is using SPFILE then there will be the name along with the location in the VALUE column. But if the database is using PFILE then there will be nothing in this column.

Step 3: Make a copy of the control file

First, find out the control file

SQL> show parameter control_files

This statement will show you the name and location of the control file. Use this information and make a copy of your control file with a different name.

You can name your control file whatever you want just make sure that the name must always end with .CTL.

C>copy C:\APP\ORADATA\ORCL\CONTROL01.CTL C:\APP\ORADATA\ORCL\CONTROL02.CTL

This copy command will create the copy of CONTROL01.CTL with the name CONTROL02.CTL.

Step 4: Edit the PFILE

The name of the PFILE is INIT.ORA. You can search this name using your operating system search utility. Otherwise by default this file is situated in ORACLE_HOME/dbs folder. Once you find this file open it with a NOTEPAD utility to edit it.

Inside the file search the parameter named CONTROL_FILE. Edit the value of this parameter with the name along with the location of all your control files.

Make sure all these names are enclosed in single quotes and separated by comma. Like this –

control_file = 'C:\APP\ORADATA\ORCL\CONTROL01.CTL','C:\APP\ORADATA\ORCL\CONTROL02.CTL'

Now save the changes and come back to our command prompt.

Step 5: Restart the database

In order to see these changes in action we need to restart the database. So first shut down the database

SQL> shut immediate

Now startup the database

SQL>startup;

If there were any problems with the multiplexing of the control file then we would have got an error during the startup. Since the startup was smooth and there were no errors that means we have successfully multiplexed our control files.

That is how we multiplex control files using PFILE in Oracle Database. For more details you can watch my video on the same topic on my YouTube channel. Also, make sure to subscribe as in the next tutorial we will learn how to move control files.

Thanks and have a great day.