一、环境说明
源库:
操作系统(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、源库设置强制归档
alter database force logging;
3.1.2、源库初始化设置
alter system set LOG_ARCHIVE_CONFIG='DG_CONFIG=(
hasb,sbdg)' scope=both sid='*';
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='*';
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模式
sqlplus>startup nomount
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;