Configuring Physical Standby Database Using Data Guard 

Primary Database - Dhee

Standby Database - Dheedr

STEP 1:

Check the Primary DB is in archive log mode or not.If it is not then enable it.

Sql>starup mount
Sql>alter database archivelog
Sql>archive log list

STEP 2:
Enable force logging in the Primary Database.

Sql>alter database force logging;

Ensure fore logging enabled or not
Select force_logging from v$database;

STEP 3 :
Verifying the database initialization parameters on primary,

Show parameter db_name
Show parameter db_unique_name

STEP 4:
Set the Log_archive_config for datagaurd configuration.

Sql>alter system set log_archive_config=’DG_config=(dhee,dheedr)’;
Show parameter log_archive_config

STEP 5:



SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=dheedr NOAFFIRM ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=dheedr';
Show parameter log_archive_dest_2
Alter system set log_archive_dest_2=enable;
Show parameter log_archive_dest_state_2.

STEP 6:

alter system set log_archive_format='%t_%s_%r.arc' scope=spfile
Show parameter log_archive_format.

STEP 7:

Set log_Archive_max_processes=30
Sql>alter system set log_archive_max_processes=30;
Show parameter log_archive_max_processes

STEP 8:

Set remote_login_passwordfile to exclusive
Sql>alter system set remote_login_passwordfile=exclusive;
Show parameter remote_login_passwordfile

STEP 9:

Set fal_server and fal_client for the primary database.
Sql>alter system set fal_server=dheedr
Sql>alter system set fal_client=dhee

STEP 10:

Set standby_file_management to auto
Sql>alter system set standby_file_management = auto;
Show parameter standby_file_management

STEP 11:

Configuring the listener and tns entries in both the servers

Listener.ora:
SID_LIST_LISTENER =
 (SID_LIST =
 (SID_DESC =
 (GLOBAL_DBNAME = dhee)
 (ORACLE_HOME = /u01/app/oracle/product/12.2.0.1/dbhome_1)
 (SID_NAME = dhee)
 ) )

 LISTENER =
 (DESCRIPTION =
 (ADDRESS = (PROTOCOL = TCP)(HOST = dheedr)(PORT = 1521))
 )
 ADR_BASE_LISTENER = /u01/app/oracle

STEP 12:

Tnsnames.ora:
dhee =
 (DESCRIPTION =
 (ADDRESS_LIST =
 (ADDRESS = (PROTOCOL = TCP)(HOST = dhee)(PORT = 1521))
 )
 (CONNECT_DATA =
 (SERVICE_NAME = dhee)
 (GLOBAL_NAME = dhee)
 (UR=A)
 ) )

 dheedr =
 (DESCRIPTION =
 (ADDRESS_LIST =
 (ADDRESS = (PROTOCOL = TCP)(HOST =dheedr)(PORT = 1521))
 )
 (CONNECT_DATA =
 (SERVICE_NAME = dhee)
 (GLOBAL_NAME = dhee)
 (UR=A)
 ) )

STEP 13:
Checking the tnsping utility on Primary and Standby.

Tnsping dhee
Tnsping dheedr

STEP 14:
Backup the primary database via RMAN utility.
RMAN>backup database plus archivelog;

STEP 15:
Create the standby control file on the primary database.
RMAN>alter database create standby controlfil  as ‘$ORACLE_HOME/dbs’
Create the passwordfile on the primary database.
Orapwd file=’$ORACLE_HOME/dbs/orapwdhee Password=Doyen@123
Entries=10.
Create pfile from spfile.
Create pfile=’$ORACLE_HOME/dbs/initdhee.ora’ from spfile

STEP 16:

Moving the files like standby controlfile,passwordfile & backup pieces to the standby database through scp connection.

STEP 17:

Connect the database using the pfile by changing some parameters:
 *.db_unique_name='dheedr'

 *.fal_server='dhee'

 *.log_archive_dest_2='SERVICE=dhee ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=dhee'

STEP 18:

Taking the database to nomount stage.
Sql>startup nomount pfile=’$ORACLE_HOME/dbs/initdhee.ora’

database to mount stage.
RMAN>restore controlfile from ‘$ORACLE_HOME/dbs/standbyctl.ctl’

STEP 19:

Sql>alter database mount;

STEP 20:

Create the Standby database
RMAN>duplicate database ‘dhee’ for standby backup location ‘$ORACLE_HOME/dbs/’;








Apply the redo logs from the primary to standby database.





































































STEP 21:


































Recent Posts

Start typing and press Enter to search