1. 手动归档
SQL> alter database archivelog manual;
SQL> alter system archive log all --使用all子句归档所有被写满的重做日志文件组
SQL> alter system archive log current --使用current子句归档当前的重做日志文件组
SQL> show parameter log_archive_max_processes --日志归档进程数
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_max_processes integer 4
2.设置归档目的地,初始化参数Log_archive_dest_n
log_archive_dest_n 最多可以设置31个归档目的地,
1-10用于指定本地的或远程的归档目的地,
11-31只能用于只用于指定远程的归档目的地
关键字(LOCATION:本地路径;SERVICE:远程路径)
alter system set log_archive_dest_1='LOCATION=/opt/oracle/arch';
alter system set log_archive_dest_2='LOCATION=USE_DB_RECOVERY_FILE_DEST'
alter system set log_archive_dest_3='LOCATION=+RECOVERY';
alter system set log_archive_dest_4='SERVICE=STANDBY1';
---
设置Log_archive_format,指定归档文件命名方式
SQL> alter system set log_archive_format='ARCH_%t_%s_%r.arc' scope=spfile;
%s 代表日志序列号(Log Sequence Number)
%S 代表日志序列号,不足3位左侧添加0补齐
%t 代表线程号(Thread Number)
%T 代表线程号,不足3位左侧添加0补齐
%r 代表重做日志的ID(Resetlogs ID)
%R 代表重做日志的ID,,不足3位左侧添加0补齐
Optional 可选的归档目的地,无论该归档目的地上时候成功归档,都覆盖重做日志文件
Mandatory 强制归档,必须成功归档的目的地,如果归档失败,重做日志文件将不能被覆盖,数据库将挂起
Reopen 指定重新归档的时间间隔,默认值为300,必须跟在Mandatory选项之后
SQL> alter system set log_archive_dest_1='LOCATION=/opt/oracle/arch Mandatory';
SQL> alter system set log_archive_dest_2='LOCATION=USE_DB_RECOVERY_FILE_DEST Optional';
注意:以下初始化参数为一组的使用
Log_archive_dest 主归档路径
Log_archive_duplex_dest 次归档路路径
Log_archive_dest_n只能使用一组来设置归档目的地,不可与Log_archive_dest和Log_archive_duplex_dest同用
---
Log_archive_dest_state_n(n为整数,取1-31的某个值)
1. enable: 标识归档目的地可以使用
2. defer: 标识归档目的地暂时不可用
3. alterNate: 标识Log_archive_dest_n指定归档目的地为备用归档目的地.
SQL> alter system set log_archive_dest_state_5=ALTERNATE;
注意:
1. 备用归档目的地状态为defer时候,当与其对应的归档目的地(主归档目的地)不可用时候,该备用目的地
状态变为Enable,代替不可用的主归档目的地,成为新归档目的地.
2. 备用归档目的所对应的主归档目的不能为Log_archive_dest_11到Log_archive_dest_31
SQL> alter system set log_archive_dest_5='LOCATION=/opt/oracle/arch5';
SQL> alter system set log_archive_dest_state_5=alterNate;
SQL> alter system set log_archive_dest_4='LOCATION=/opt/oracle/arch altername=Log_archive_dest_5 NOREOPEN';
重做日志文件被归档当主归档目的地/opt/oracle/arch4目录,如果/opt/oracle/arch4目录不可用,系统会报告一次错误,然后自动切换
到备用归档目的地/opt/oracle/arch5目录,同时主归档目的地的状态变为disabled,备用归档目的地状态变为Valid
SQL> select dest_name,status,destination from v$archive_dest;
DEST_NAME STATUS DESTINATION
-------------------------------------------------------------------------------- ------------------ -------------------------
LOG_ARCHIVE_DEST_1 VALID +ARCH --归档存储到ASM中
LOG_ARCHIVE_DEST_2 VALID NET_ORCLDG --归档存储到远程DG中,其中net_orcldg为远程网络服务名
SQL> select sequence#,first_change#,next_change# from v$archived_log; --查看归档日志SCN起点和结束点SCN
SEQUENCE# FIRST_CHANGE# NEXT_CHANGE#
---------- ------------- ------------
155 1980744 1998384
156 1998384 1998629
156 1998384 1998629
116 1998380 1998659
116 1998380 1998659
157 1998629 1999665