The following is the detail steps of how to create a physical standby database:
This case is created, operated and followed on the steps from oracle online help documentation.
The configuration of the two sites server as following:
Primary Database:
[root@vmoel5u4 ~]# uname -a
Linux vmoel5u4.oracle.com 2.6.18-164.el5 #1 SMP Thu Sep 3 02:16:47 EDT 2009 i686 i686 i386 GNU/Linux
[root@vmoel5u4 ~]# hostname
vmoel5u4.oracle.com
IP: 192.168.92.100
?
Standby Database:
[root@even ~]# uname -a
Linux even.oracle.com 2.6.18-164.el5 #1 SMP Thu Sep 3 02:16:47 EDT 2009 i686 i686 i386 GNU/Linux
[root@even ~]# hostname
even.oracle.com
IP: 192.168.92.200
?
The followings are operated on Primary database:
SQL> ALTER DATABASE FORCE LOGGING; /* This operation can be done on open database status */
alter database add standby logfile group 4 ('/u01/app/oracle/oradata/chicago/sbredo04.log') size 50m;
alter database add standby logfile group 5 ('/u01/app/oracle/oradata/chicago/sbredo05.log') size 50m;
alter database add standby logfile group 6 ('/u01/app/oracle/oradata/chicago/sbredo06.log') size 50m;
alter database add standby logfile group 7 ('/u01/app/oracle/oradata/chicago/sbredo07.log') size 50m;
/* How to drop the standby by logfile? */
alter database drop standby logfile group 4;
/* How to drop the standby by logfile? */
alter database backup controlfile to trace as '$ORACLE_HOME/dbs/control.bak';
mkdir -p /u01/app/oracle/arch1/chicago
mkdir -p /u01/app/oracle/arch2/chicago
vi initorcl.ora
DB_NAME=chicago
DB_UNIQUE_NAME=chicago
LOG_ARCHIVE_CONFIG='DG_CONFIG=(chicago,boston)'
CONTROL_FILES='/u01/app/oracle/chicago/control1.ctl', '/u01/app/oracle/arch2/chicago/control2.ctl'
LOG_ARCHIVE_DEST_1='LOCATION=/u01/app/oracle/chicago/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=chicago'
LOG_ARCHIVE_DEST_2='SERVICE=boston LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=boston'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
LOG_ARCHIVE_MAX_PROCESSES=10
/* The following configurations will be functioned when this primary database reverse to standby database */
FAL_SERVER=boston
FAL_CLIENT=chicago
DB_FILE_NAME_CONVERT='/u01/app/oracle/oradata/boston','/u01/app/oracle/oradata/chicago'
LOG_FILE_NAME_CONVERT= '/u01/app/oracle/oradata/boston/','/u01/app/oracle/oradata/chicago/'
STANDBY_FILE_MANAGEMENT=AUTO
/* The above configurations will be functioned when this primary database reverse to standby database */
?
SQL> shutdown immediate
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
SQL> create spfile from pfile;
File created.
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE ARCHIVELOG;
SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/u01/app/oracle/oradata/chicago/boston.ctl';
SQL> shutdown immediate;
/* make related directory on the standby database server */
/* The followings ara operated on Standby database: */
mkdir -p /u01/app/oracle/arch1/boston
mkdir -p /u01/app/oracle/oradata/boston
mkdir -p /u01/app/oracle/arch2/boston
mkdir -p /u01/app/oracle/admin/boston/{a,b,c,u,dp,p}dump
/* end for make related directory on the standby database server */
/* Copy the primary database's related files to standby database server */
scp /u01/app/or