一、環境說明
源庫:
操作系統(aix 7.1)
IP地址
/etc/hosts
192.168.8.157 hasb1
192.168.8.158 hasb2
192.168.8.160 hasb-scan
實例名:hasb
歸檔模式:enabled
目標庫
操作系統(aix 7.1)
IP地址
/etc/hosts
192.168.8.159 sbdg
實例名:hasb
歸檔模式:enabled
二、TNSNAMES說明
hasb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.160)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = hasb)
)
)
sbdg =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST=192.168.8.159)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = sbdg)
(SID=hasb)
(UR=A)
)
)
hasb1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST=192.168.8.157)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = hasb)
(SID=hasb1)
)
)
hasb2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST=192.168.8.158)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = hasb)
(SID=hasb2)
)
)
三、安裝過程
3.1、源庫設置
3.1.1、源庫設置強制歸檔
3.1.2、源庫初始化設置
alter system set LOG_ARCHIVE_DEST_1='LOCATION=+HADG/hasb/archivelog/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES)DB_UNIQUE_NAME=hasb' scope=both sid='*';
alter system set LOG_ARCHIVE_DEST_2='SERVICE=sbdg LGWR AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=sbdg' scope=both sid='*';
alter system set log_archive_format='%t_%s_%r.arc' scope=spfile sid='*';
alter system set log_archive_max_processes=4 scope=both sid='*';
alter system set fal_server=sbdg scope=both sid='*';
alter system set DB_FILE_NAME_CONVERT='+HADG/sbdg/datafile/','+HADG/hasb/datafile/' scope=spfile sid='*';
alter system set LOG_FILE_NAME_CONVERT='+HADG/sbdg/archivelog/','+HADG/hasb/archivelog/'scope=spfile sid='*';
alter system set standby_file_management=AUTO scope=both sid='*';
3.1.3、重啓後驗證
set linesize 500 pages 0col value for a90
col name for a50
select name, value from v$parameter
where name in ('db_name','db_unique_name','log_archive_config', 'log_archive_dest_1','log_archive_dest_2',
'log_archive_dest_state_1','log_archive_dest_state_2', 'remote_login_passwordfile',
'log_archive_format','log_archive_max_processes','fal_server','db_file_name_convert',
'log_file_name_convert', 'standby_file_management');
3.1.4、添加standby日誌
alter system set standby_file_management=manual scope=both sid='*';
select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC
---------- ---------- ---------- ---------- ---------- ---------- ---
STATUS FIRST_CHANGE# FIRST_TIME NEXT_CHANGE# NEXT_TIME
---------------- ------------- ------------ ------------ ------------
1 1 15611 52428800 512 1 YES
INACTIVE 1.4016E+13 26-AUG-14 1.4016E+13 26-AUG-14
2 1 15612 52428800 512 1 NO
CURRENT 1.4016E+13 26-AUG-14 2.8147E+14
3 2 22249 52428800 512 1 YES
INACTIVE 1.4016E+13 26-AUG-14 1.4016E+13 26-AUG-14
4 2 22250 52428800 512 1 NO
CURRENT 1.4016E+13 26-AUG-14 2.8147E+14
$ asmcmd
ASMCMD> cd hasb
ASMCMD> mkdir standbylog
alter database add standby logfile thread 1 group 11 '+hadg/hasb/standbylog/standby_group_01.log' size 52428800;
alter database add standby logfile thread 1 group 12 '+hadg/hasb/standbylog/standby_group_02.log' size 52428800;
alter database add standby logfile thread 2 group 16 '+hadg/hasb/standbylog/standby_group_06.log' size 52428800;
alter database add standby logfile thread 2 group 17 '+hadg/hasb/standbylog/standby_group_07.log' size 52428800;
3.1.5、進行備份
rman target /
run
{
sql "alter system switch logfile";
allocate channel ch1 type disk format '/dmp/hasb/Primary_for_DG_%U';
allocate channel ch2 type disk format '/dmp/hasb/Primary_for_DG_%U';
backup database;
backup current controlfile for standby;
sql "alter system archive log current";
}
3.2、目標庫配置
3.2.1、複製初始化文件到目標庫並更改成如下
*.audit_file_dest='/oracle/app/admin/ybdg/adump'
*.audit_trail='db'
*.cluster_database=false
*.compatible='11.2.0.4.0'
*.control_files='+HADG/ybdg/controlfile/current.259.852547877'
*.db_block_size=8192
*.db_create_file_dest='+HADG'
*.db_domain=''
*.db_file_name_convert='+HADG/hayb/datafile/','+HADG/ybdg/datafile/'
*.db_name='hayb'
*.db_unique_name='ybdg'
*.diagnostic_dest='/oracle/app'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=haybXDB)'
*.fal_server='hayb'
*.job_queue_processes=1000
*.log_archive_config='DG_CONFIG=(hayb,ybdg)'
*.log_archive_dest_1='LOCATION=+HADG/ybdg/archivelog/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=ybdg'
*.log_archive_dest_2='SERVICE=hayb LGWR AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=hayb'
*.log_archive_format='%t_%s_%r.arc'
*.log_archive_max_processes=4
*.log_file_name_convert='+HADG/hayb/archivelog/','+HADG/ybdg/archivelog/'
*.open_cursors=300
*.pga_aggregate_target=11710496768
*.processes=2000
*.remote_login_passwordfile='exclusive'
*.session_cached_cursors=300
*.sessions=885
*.sga_target=35132538880
*.standby_file_management='AUTO'
*.undo_tablespace='UNDOTBS1'
3.2.2、目標庫啓動成mount模式
3.2.3、將備份的文件傳送到目標庫下的/dmp/hasb/這個目錄
3.2.4、在源庫上對目標庫進行恢復
rman target / auxiliary sys/hayb#2014@ybdg
DUPLICATE TARGET DATABASE FOR STANDBY NOFILENAMECHECK;
3.2.5、在源庫上設置最大可用
alter database set standby database tomaximize availability;
3.2.6、在目標庫啓動日誌應用模式
alter database recovermanaged standby database disconnect from session;
3.2.7、在目標庫上查詢日誌應用情況
SELECT THREAD#,APPLIED ,SEQUENCE#, FIRST_TIME, NEXT_TIME FROM V$ARCHIVED_LOG;