0% found this document useful (0 votes)
248 views

DG Setup

1. The document describes the steps to configure Dataguard setup between an Oracle 11g primary and standby database. 2. Key steps in the primary include configuring log archive and standby settings, copying backup files to the standby, and using RMAN to duplicate the database. 3. Key steps in the standby include modifying configuration files, creating a new database from a template, enabling log archive destination, and recovering the standby database after duplication from the primary.

Uploaded by

vignasethuraman
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
248 views

DG Setup

1. The document describes the steps to configure Dataguard setup between an Oracle 11g primary and standby database. 2. Key steps in the primary include configuring log archive and standby settings, copying backup files to the standby, and using RMAN to duplicate the database. 3. Key steps in the standby include modifying configuration files, creating a new database from a template, enabling log archive destination, and recovering the standby database after duplication from the primary.

Uploaded by

vignasethuraman
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

DATAGURAD SETUP IN ORACLE11G

In Primary

1) Change the spfile in primary database and restart

ALTER SYSTEM SET LOG_ARCHIVE_CONFIG='DG_CONFIG=(TESTPMS,TESTPMSstdb)';

ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='service="TESTPMSstdb"','LGWR ASYNC NOAFFIRM delay=0 optional
compression=disable max_failure=0 max_connections=1 reopen=300
db_unique_name="TESTPMS_STBY" net_timeout=30','valid_for=(all_logfiles,primary_role)'
ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE;

ALTER SYSTEM SET LOG_ARCHIVE_FORMAT='%t_%s_%r.arc' SCOPE=SPFILE;

ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE SCOPE=SPFILE

ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=AUTO;

ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=4;


ALTER SYSTEM SET FAL_SERVER='TESTPMSSTdb';
ALTER SYSTEM SET FAL_CLIENT='TESTPMS';




2) Genrate pfile in Primary DB
create pfile='/app/oracle/admin/TESTPMS/pfile/initTESTPMS.ora' from spfile;

3) Run backup script in primary

4) copied the control files, backup, onlinelogs and archive logs, pfile

scp -r -i /root/TESTcloud.pem -P 22 /backup/flash_recovery_area/ [email protected]:/backup/flash_recovery_area/TESTPMS/

scp -r -i /root/TESTcloud.pem -P 22 /backup/fast_recovery_area/TESTPMS/control02.ctl
[email protected]:/backup/fast_recovery_area/TESTPMS/control02.ctl

scp -r -i /root/TESTcloud.pem -P 22 /data/controlfile/TESTPMS/control01.ctl
[email protected]:/data/controlfile/TESTPMS/control01.ctl

scp -r -i /root/TESTcloud.pem -P 22 /backup/flash_recovery_area/TESTPMS/autobackup/
[email protected]:/backup/flash_recovery_area/TESTPMS/autobackup/

scp -i /root/TESTcloud.pem -P 22 /app/oracle/admin/TESTPMS/pfile/initTESTPMS.ora
[email protected]:/app/oracle/admin/TESTPMS/pfile/initTESTPMS.ora



5) Enable DG broker

ALTER SYSTEM SET DG_BROKER_START=TRUE SCOPE=BOTH;

6) Remote login password file.
orapwd file=orapwTESTPMSstdb password=STANDARD IGNORECASE=Y

7) Configure listener

#####################
#tnsnames.ora########
#####################

# tnsnames.ora Network Configuration File: /app/oracle/11.3.0/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

TESTPMSprdb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = devprimary)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = TESTPMS.psc.com)
)
)

TESTPMSstdb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = devstandby)(PORT = 1521))
(CONNECT_DATA = (UR=A)
(SERVER = DEDICATED)
(SERVICE_NAME = TESTPMSstdb.psc.com)
)
)


#####################
#listener.ora########
#####################

# listener.ora Network Configuration File: /app/oracle/11.3.0/network/admin/listener.ora
# Generated by Oracle configuration tools.

ADR_BASE_LISTENER_TESTPMS = /app/oracle

LISTENER_TESTPMS =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = devprimary)(PORT = 1521))
)
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = TESTPMS)
(ORACLE_HOME = /app/oracle/11.3.0)
(SID_NAME = TESTPMS)
)
)

8) Create DG config

CREATE CONFIGURATION 'TESTR' AS PRIMARY DATABASE IS 'TESTPMS' CONNECT IDENTIFIER IS TESTPMSprdb

ADD DATABASE 'TESTPMSstdb' AS CONNECT IDENTIFIER IS TESTPMSstdb MAINTAINED AS PHYSICAL;

enable configuration;

9) Connect to RMAN ( after step 7 in Standby)

rman target sys/STANDARD@TESTPMSprdb auxiliary sys/STANDARD@TESTPMSstdb

10) Duplicate DB connect to auxiliary db from primary ( after step 7 in Standby)

DUPLICATE TARGET DATABASE
FOR STANDBY
FROM ACTIVE DATABASE
DORECOVER
NOFILENAMECHECK;


In Standby

1) Modify the bash_profile ( ORACLE_HOSTNAME,ORACLE_UNQNAME,ORACLE_SID). Changed
the ORACLE_SID FROM TESTpms to TESTpmsstdb in bash_profile

TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_HOSTNAME=devstandby; export ORACLE_HOSTNAME
ORACLE_BASE=/app/oracle; export ORACLE_BASE
ORACLE_UNQNAME=TESTPMSstdb; export ORACLE_UNQNAME
ORACLE_HOME=$ORACLE_BASE/11.3.0; export ORACLE_HOME
PATH=/usr/sbin:$PATH; export PATH
export ORACLE_SID=TESTPMSstdb
PATH=$ORACLE_HOME/bin:$PATH; export PATH
PATH=$PATH:$ORACLE_HOME/OPatch; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

2) Created a template form the old DB in standby DB



3) Create new database from the template


4) Changed the below in the pfile copied from primary ( after step 4 in primary)

*.db_unique_name='TESTPMSstdb'
*.fal_client='TESTPMSSTDB'
*.fal_server='TESTPMS'
*.log_archive_dest_2='SERVICE=TESTPMSprdb ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=TESTPMS'

5) Rename the file from initTESTPMS.ora to initTESTPMSstdb.ora

6) Create spfile from the modified pfile from the above steps

create spfile from pfile='/app/oracle/admin/TESTPMS/pfile/initTESTPMSstdb.ora';


7) Configure listener

#####################
#tnsnames.ora########
#####################

# tnsnames.ora Network Configuration File: /app/oracle/11.3.0/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

TESTPMSprdb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = devprimary)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = TESTPMS.psc.com)
)
)

TESTPMSstdb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = devstandby)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = TESTPMSstdb)
)
)


#####################
#listener.ora########
#####################

# listener.ora Network Configuration File: /app/oracle/11.3.0/network/admin/listener.ora
# Generated by Oracle configuration tools.

ADR_BASE_LISTENER_TESTPMS = /app/oracle

LISTENER_TESTPMSSTDB =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = devstandby)(PORT = 1521))
)
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = TESTPMS)
(ORACLE_HOME = /app/oracle/11.3.0)
(SID_NAME = TESTPMSstdb)
)
)

8) Duplicate DB from standby ( This is optional)

rman target sys/STANDARD
startup mount
restore database

9) Enable DG broker
ALTER SYSTEM SET DG_BROKER_START=TRUE SCOPE=BOTH;

10) Remote login password file.

orapwd file=orapwTESTPMSstdb password=STANDARD IGNORECASE=Y


11) Once duplicate DB recovery completed after the step in 10 (Primary)

shutdown immediate
startup
alter database recover managed standby database disconnect from session;


13. Any error from the above step, then execute the below commands
alter database recover managed standby database CANCEL;
alter database recover managed standby database disconnect from session;


14. Check DB mode
select OPEN_MODE, DATABASE_ROLE from v$database;


OPEN_MODE DATABASE_ROLE
-------------------- ----------------
READ ONLY WITH APPLY PHYSICAL STANDBY


15. Add standby redo log files
ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=MANUAL;;

alter database add standby logfile '/backup/flash_recovery_area/TESTPMSSTDB/onlinelog/stdby_o1_mf_3_9qqbp03n_.log' size
209715200;

alter database add standby logfile '/backup/flash_recovery_area/TESTPMSSTDB/onlinelog/stdby_o1_mf_2_9qqbot0k_.log' size
209715200;

alter database add standby logfile '/backup/flash_recovery_area/TESTPMSSTDB/onlinelog/stdby_o1_mf_1_9qqbomkn_.log' size
209715200;

ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=AUTO scope=both;

16. If redo online log location is in the flash_recovery location then change the location of the redo
online logs to match the primary
17. Install script to clean up the archive log

You might also like