当前位置:操作系统 > Unix/Linux >>

开启归档模式及其相关参数

开启归档模式及其相关参数
 
涉及以下几个参数:log_archive_min_succeed_dest动态参数   log_archive_dest_state_ 参数
log_archive_format   log_archive_dest_1
1.开启归档模式
SQL> show user
USER 为 "SYS"
SQL> archive loglist
数据库日志模式             非存档模式
自动存档             禁用
存档终点            USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列     32
当前日志序列           36
SQL> shutdown immediate;

SQL> startup mount;     开启归档模式 需要在MOUNT状态下进行。
ORACLE 例程已经启动。
Total System Global Area  431038464 bytes
Fixed Size                  1375088 bytes
Variable Size             327156880 bytes
Database Buffers           96468992 bytes
Redo Buffers                6037504 bytes
数据库装载完毕。
SQL> alter database archivelog;
数据库已更改。
SQL> alter database open;
数据库已更改。
SQL> archive loglist;
数据库日志模式            存档模式
自动存档             启用
存档终点            USE_DB_RECOVERY_FILE_DEST   ---开启归档后默认归档位置是闪回区
最早的联机日志序列     32
下一个存档日志序列   36
当前日志序列           36
SQL> show parameter log_archive_max_process
NAME                                 TYPE        VALUE
----------------------------------------------- ------------------------------
log_archive_max_processes            integer     4
SQL> show parameter log_archive_dest_
NAME                                 TYPE        VALUE
----------------------------------------------- ------------------
log_archive_dest_1                   string
log_archive_dest_10                  string
log_archive_dest_state_13            string      enable
2.指定归档日志存放目录
SQL> alter  system set  log_archive_dest_1="location=d:\disk1\offlinelog\  mandatory";      这里如果是RAC的话,可以指定为闪回区并具体到实例alter system set  log_archive_dest_1='location=USE_DB_RECOVERY_FILE_DEST' sid='*'
系统已更改。
SQL> show parameter log_archive_dest_1
NAME                                 TYPE        VALUE
----------------------------------------------- ------------------------------
log_archive_dest_1                   string      location=d:\disk1\offlinelog\  mandatory

SQL> alter system set  log_archive_dest_2="location=d:\disk2\offlinelog\ ";
系统已更改。
SQL> show parameter log_archive_dest_2 
NAME                                 TYPE        VALUE
----------------------------------------------- -----------------------------
log_archive_dest_2                   string      location=d:\disk2\offlinelog\
SQL> alter system set log_archive_dest_3="location=d:\disk3\offlinelog\ optional";
系统已更改。 
SQL> alter system setlog_archive_dest_4="location=d:\disk4\offlinelog\ optional";
系统已更改。
SQL> alter system setlog_archive_dest_5="location=d:\disk5\offlinelog\ mandatory";
系统已更改。

 

设置归档目录时的几个参数:
optional该目录下的归档日志文件是可选的。mandatory强制性的必须归档,ORACLE默认未指明即是OPTIONAL 。 
SQL> showparameter log_archive_dest_
NAME                                 TYPE        VALUE
----------------------------------------------- ------------------------------
log_archive_dest_1                   string      location=d:\disk1\offlinelog\        mandatory
log_archive_dest_2                   string      location=d:\disk2\offlinelog\
log_archive_dest_3                   string      location=d:\disk3\offlinelog\       optional
log_archive_dest_4                   string      location=d:\disk4\offlinelog\       optional
log_archive_dest_5                   string      location=d:\disk5\offlinelog\       mandatory
log_archive_dest_6                   string

SQL> col destination for a30
SQL> select  destination,binding,target,status from  v$archive_dest;
DESTINATION                    BINDING   TARGET STATUS
------------------------------ ---------------- ---------
d:\disk1\offlinelog\           MANDATORY PRIMARY VALID
d:\disk2\offlinelog\           OPTIONAL  PRIMARY VALID          设置参数时未指定OPTIONAL,ORACLE默认即是此参数值。
d:\disk3\offlinelog\           OPTIONAL  PRIMARY VALID
d:\disk4\offlinelog\           OPTIONAL  PRIMARY VALID
d:\disk5\offlinelog\           MANDATORY PRIMARY VALID
                               OPTIONAL  PRIMARY INACTIVE
                               OPTIONAL  PRIMARY INACTIVE
查询已经产生的归档日志名--系统默认的命令格式
SQL> select name,blocks from v$archived_log;
NAME                                                                                BLOCKS
------------------------------------------------------------------------------------------
/u01/app/oracle/flash_recovery_area/BYS001/archivelog/2013_06_08/o1_mf_1_12_8v63        762
########################################################################################

 

3.修改生成的归档日志名格式
初始化参数LOG_ARCHIVE_FORMAT用于指定归档日志的文件名格式,设置该初始化参数时,可以指定以下匹配符:
%s: 日志序列号   %S: 日志序列号(带有前导0)    %t: 重做线程编号.%T: 重做线程编号(带有前导0)   %a: 活动ID   %d: 数据库ID号   %r RESETLOGS的值.
比如arch_%s_%r
注意:
未设置 log_archive_dest_ 参数,只设置LOG_ARCHIVE_FORMAT参数时,生成的归档日志名并不是LOG_ARCHIVE_FORMAT中指定的文件名,而仍是原来的系统命令。
log_archive_format的参数只对log_archive_dest和log_archive_dest_n生效。
SQL> alter system set log_archive_format='arch_%s_%t_%r.arc' scope=both;     因为此参数是静态参数--从报错中也能看出,不能用scope=both;
alter system setlog_archive_format='arch_%s_%t_%r.arc' scope=both
ORA-02095: specified initializationparameter cannot be modified
 
SQL> alter system set  log_archive_format='arch_%s_%t_%r.arc'  scope=spfile;
System altered
 
手动切换日志查看是否生成归档日志
SQL> archive log list
数据库日志模式            存档模式
自动存档             启用
存档终点            d:\disk5\offlinelog\
最早的联机日志序列     33
下一个存档日志序列   37
当前日志序列           37
SQL> alter system switch logfile;
系统已更改。
 
SQL> host
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有1985-2001 Microsoft Corp. 
C:\Documents and Settings\Administrator\桌面>dir d:\disk5\offlinelog
 驱动器 D 中的卷是新加卷
 卷的序列号是 D089-4E9A
 d:\disk5\offlinelog 的目录
 
2013-01-27 16:12    <DIR>          .
2013-01-27 16:12    <DIR>          ..
2013-01-27 16:12         3,437,568 ARC0000000037_0802131748.0001
               1 个文件      3,437,568 字节
               2 个目录    475,342,848 可用字节
C:\Documents and Settings\Administrator\桌面>dir d:\disk1\offlinelog
 驱动器 D 中的卷是新加卷
 卷的序列号是 D089-4E9A
 d:\disk1\offlinelog 的目录、
2013-01-27 16:12    <DIR>          .
2013-01-27 16:12    <DIR>          ..
2013-01-27 16:12         3,437,568ARC0000000037_0802131748.0001
        &nb
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,