[この例の前提]
・プライマリ(g32b21)がアーカイブモードで運用。
・スタンバイ(g50b31)がプライマリと同一OS、ORACLE、物理構成ある。
0)プライマリの状況を確認する。
oracle@g32b21% sqlplus /nolog
SQL> connect sys/change_on_install as sysdba
Connected.
SQL> SELECT name FROM v$datafile;
NAME
--------------------------------------------------------------------------------
/home/SYSTEM/system01.dbf
/home/SYSTEM/rbs01.dbf
/udb1/USER/users01.dbf
/udb2/USER/users02.dbf
/udb1/USER/indx01.dbf
/udb2/USER/indx02.dbf
6 rows selected.
SQL> SELECT name FROM v$controlfile;
NAME
--------------------------------------------------------------------------------
/home/SYSTEM/control01.ctl
/udb1/SYSTEM/control02.ctl
/udb2/SYSTEM/control03.ctl
SQL> SELECT member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/home/SYSTEM/redo1a.log
/udb2/SYSTEM/redo1b.log
/home/SYSTEM/redo2a.log
/udb2/SYSTEM/redo2b.log
/home/SYSTEM/redo3a.log
/udb2/SYSTEM/redo3b.log
6 rows selected.
SQL> ARCHIVE LOG LIST;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /home/SYSTEM/arch/
Oldest online log sequence 27
Next log sequence to archive 29
Current log sequence 29
SQL>
1)プライマリのデータファイルにより、バックアップを作成する。
oracle@g32b21% sqlplus /nolog
SQL> connect sys/change_on_install as sysdba
Connected.
SQL> shutdown
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
oracle@g32b21% mkdir /udb1/BACKUP
oracle@g32b21% tar zcvf udb1/BACKUP/datafile.tar.gz \
home/SYSTEM/system01.dbf \
home/SYSTEM/rbs01.dbf \
udb1/USER/users01.dbf \
udb2/USER/users02.dbf \
udb1/USER/indx01.dbf \
udb2/USER/indx02.dbf
home/SYSTEM/system01.dbf
home/SYSTEM/rbs01.dbf
udb1/USER/users01.dbf
udb2/USER/users02.dbf
udb1/USER/indx01.dbf
udb2/USER/indx02.dbf
oracle@g32b21% tar zcvf /udb1/BACKUP/etc.tar.gz \
$ORACLE_HOME/dbs/initsptest2.ora \
$ORACLE_HOME/network/admin/listener.ora \
$ORACLE_HOME/network/admin/tnsnames.ora
tar: Removing leading `/’ from absolute path names in the archive
home/oracle/product/8.1.6/dbs/initsptest2.ora
home/oracle/product/8.1.6/network/admin/listener.ora
home/oracle/product/8.1.6/network/admin/tnsnames.ora
oracle@g32b21%
2)プライマリで、スタンバイ用の制御ファイルを作成する。
oracle@g32b21% sqlplus /nolog
SQL> connect sys/change_on_install as sysdba
Connected.
SQL> startup mount
ORACLE instance started.
Total System Global Area 275443696 bytes
Fixed Size 69616 bytes
Variable Size 77733888 bytes
Database Buffers 196608000 bytes
Redo Buffers 1032192 bytes
Database mounted.
SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS ’/udb1/BACKUP/control.ctl’;
Database altered.
SQL>alter database open;
Database altered.
3)バックアップしたデータファイルと制御ファイルをスタンバイに転送する。
oracle@g50b31% mkdir /udb1/BACKUP
oracle@g50b31% cd /udb1/BACKUP
oracle@g50b31% ftp g32b21
Connected to g32b21.
220 g32b21 FTP server (SunOS 5.7) ready.
Name (g32b21:oracle): oracle
331 Password required for oracle.
Password:
230 User oracle logged in.
ftp> cd /udb1/BACKUP
250 CWD command successful.
ftp> dir
200 PORT command successful.
150 ASCII data connection for /bin/ls (192.168.4.225,45858) (0 bytes).
total 37450
drwxr-xr-x 2 oracle oinstall 512 Jun 12 19:53 .
drwxr-xr-x 6 oracle oinstall 512 Jun 12 19:15 ..
-rw-r----- 1 oracle oinstall 4382720 Jun 12 19:30 control.ctl
-rw-r--r-- 1 oracle oinstall 14762912 Jun 12 19:25 datafile.tar.gz
-rw-r--r-- 1 oracle oinstall 2805 Jun 12 19:53 etc.tar.gz
226 ASCII Transfer complete.
333 bytes received in 1e-06 seconds (325195.31 Kbytes/s)
ftp> bin
200 Type set to I.
ftp> get datafile.tar.gz
ftp> get control.ctl
ftp> get etc.tar.gz
ftp> bye
221 Goodbye.
oracle@g50b31% ls -l
/bin/ls -F -l
合計 37446
-rw-r--r-- 1 oracle oinstall 4382720 6月 12日 19:50 control.ctl
-rw-r--r-- 1 oracle oinstall 14762912 6月 12日 19:50 datafile.tar.gz
-rw-r--r-- 1 oracle oinstall 2805 6月 12日 19:50 etc.tar.gz
oracle@g50b31% cd /
oracle@g50b31% mkdir /home/SYSTEM
oracle@g50b31% mkdir /home/SYSTEM/admin
oracle@g50b31% mkdir /home/SYSTEM/admin/bdump
oracle@g50b31% mkdir /home/SYSTEM/admin/cdump
oracle@g50b31% mkdir /home/SYSTEM/admin/udump
oracle@g50b31% mkdir /home/SYSTEM/arch
oracle@g50b31% mkdir /udb1/SYSTEM
oracle@g50b31% mkdir /udb1/USER
oracle@g50b31% mkdir /udb2/SYSTEM
oracle@g50b31% mkdir /udb2/USER
oracle@g50b31% tar zxvf /udb1/BACKUP/datafile.tar.gz
ome/SYSTEM/system01.dbf
home/SYSTEM/rbs01.dbf
udb1/USER/users01.dbf
udb2/USER/users02.dbf
udb1/USER/indx01.dbf
udb2/USER/indx02.dbf
oracle@g50b31% tar zxvf /udb1/BACKUP/etc.tar.gz
home/oracle/product/8.1.6/dbs/initsptest2.ora
home/oracle/product/8.1.6/network/admin/listener.ora
home/oracle/product/8.1.6/network/admin/tnsnames.ora
oracle@g50b31% cp -p /udb1/BACKUP/control.ctl /home/SYSTEM/control01.ctl
oracle@g50b31% cp -p /udb1/BACKUP/control.ctl /udb1/SYSTEM/control02.ctl
oracle@g50b31% cp -p /udb1/BACKUP/control.ctl /udb2/SYSTEM/control03.ctl
oracle@g50b31%
4)スタンバイにリスナーを構成する。
oracle@g50b31% vi /home/oracle/product/8.1.6/dbs/initsptest2.ora
(HOST名を変更)
oracle@g50b31% lsnrctl start
oracle@g50b31% lsnrctl start listener1
5)スタンバイの初期化パラメータを作成する。
oracle@g50b31% vi /home/oracle/product/8.1.6/dbs/initsptest2.ora
(リスナーのHOST名を変更)
6)スタンバイのインスタンスを起動して、スタンバイとしてマウントする。
oracle@g50b31% sqlplus /nolog
SQL> connect sys/change_on_install as sysdba
Connected to an idle instance.
SQL> STARTUP NOMOUNT
ORACLE instance started.
Total System Global Area 275443696 bytes
Fixed Size 69616 bytes
Variable Size 77733888 bytes
Database Buffers 196608000 bytes
Redo Buffers 1032192 bytes
SQL> ALTER DATABASE MOUNT STANDBY DATABASE;
Database altered.
SQL>
7)読み取り専用モードでの一時表領域の作成
SQL> ALTER TABLESPACE TEMP ADD TEMPFILE ’/home/SYSTEM/temp01.dbf’ SIZE 500M;
8)スタンバイの状況を確認する。
SQL> SELECT name FROM v$datafile;
NAME
--------------------------------------------------------------------------------
/home/SYSTEM/system01.dbf
/home/SYSTEM/rbs01.dbf
/udb1/USER/users01.dbf
/udb2/USER/users02.dbf
/udb1/USER/indx01.dbf
/udb2/USER/indx02.dbf
6 rows selected.
SQL> SELECT name FROM v$controlfile;
NAME
--------------------------------------------------------------------------------
/home/SYSTEM/control01.ctl
/udb1/SYSTEM/control02.ctl
/udb2/SYSTEM/control03.ctl
SQL> SELECT member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/home/SYSTEM/redo1a.log
/udb2/SYSTEM/redo1b.log
/home/SYSTEM/redo2a.log
/udb2/SYSTEM/redo2b.log
/home/SYSTEM/redo3a.log
/udb2/SYSTEM/redo3b.log
6 rows selected.
SQL> ARCHIVE LOG LIST;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /home/SYSTEM/arch/
Oldest online log sequence 27
Next log sequence to archive 29
Current log sequence 29