1、 主备库口令文件的密码一致、并开启logging、修改tnsnames.ora
2、 备份standby controlfile并把standby controlfile 复制到备库成多份(根据备库的参数文件把 standby controlfile复制成多份,多路径)、RMAN备份主库数据
3、 修改参数文件(主库,备库的参数都要修改)
4、 备库alter databae mount standby database;使用RMAN恢复数据
5、 备库应用日志
主库操作为紫色
备库操作为蓝色
1、
主库
alter database force logging;
复制主库口令文件给备库就不记录了,修改tnsnames.ora也不记录了,注意口令文件修改备库相应的ORACLE_SID
2、
复制主库standby controlfile给备库就不记录了,注意复制成多份多路径根据备库的参数文件,及RMAN全库备份也不记录了
3、
修改参数文件
alter system set fal_client='student';
alter system set fal_server='student_st';
alter system set log_archive_config='DG_CONFIG=(student,student_st)';
alter system set log_archive_dest_1='LOCATION=/rman/archivelog/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=student';
alter system set log_archive_dest_2='SERVICE=student_st LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=student_st';
alter system set log_archive_dest_state_1='ENABLE';
alter system set log_archive_dest_state_2='DEFER';
alter system set standby_file_management='AUTO';
备库
修改参数文件(使用SPFILE启动实例)
alter system set fal_client='student_st';
alter system set fal_server='student';
alter system set log_archive_config='DG_CONFIG=(student_st,student)';
alter system set log_archive_dest_1='LOCATION=/rman/arch/student_st/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=student_st';
alter system set log_archive_dest_2='SERVICE=student LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=student';
alter system set log_archive_dest_state_1='ENABLE';
alter system set log_archive_dest_state_2='DEFER';
alter system set standby_file_management='AUTO';
4、
开启备份mount (因为主库copy过来的standby controlfile已经存在所以可以mount)
alter database mount standby database;
RMAN> catalog start with '/xxxx/'; --注册备份集
RMAN> restore database; --恢复数据文件
5、
alter database recover managed standby database disconnect from session; --接收并应用日志
select sequence#.applied from v$archived_log;--查看日志应用情况
主库
alter system set log_archive_dest_state_2='enable';
alter system switch logfile; --多次切换日志,并查看备份应用日志状态
archive log list;
备份
查看应用状态
select sequence#.applied from v$archived_log;