ITPub博客

首页 > 数据库 > Oracle > oracle归档日志相关设置

oracle归档日志相关设置

Oracle 作者:wm10240 时间:2014-11-11 16:19:15 0 删除 编辑

1、查看目录的归档情况:

ARCHIVE LOG LIST

 

2、从非归档模式转换为归档模式的步骤

(1) 关闭数据库  shutdown nomal/immediate/transactional 不能使用abort来关闭数据库,因为需要一个干净的数据库(即数据库的控制文件和数据库文件要同步)

(2) startup mount 使数据库处于mount 状态

(3) alter database archivelog  该命令是从控制文件中写一些东西,让数据库处于归档模式

(4) alter database open   使数据库处于open状态

(5) 给数据库做一次全备份 这个数据库是以后数据库备份的基点。(这里的全备份其实就是把数据库关闭掉,采用系统拷贝的命令来完成)

 

3、自动归档模式及ARC多个子进程说明

log_archive_start 参数:自动归档模式,10g及后这个参数自动为true。

如果为 TRUE,将在例程启动时自动启动n个 ARCn 进程,其中 n是由LOG_ARCHIVE_MAX_PROCESSES 确定的值。

如果为 FALSE,将禁止在例程启动时启动ARCn。

 

ALTER SYSTEM ARCHIVE LOG START --开启自动归档

ALTER SYSTEM ARCHIVE LOG STOP --关闭自动归档 (这个和log_archive_start有点矛盾,可能是在log_archive_start为true时,再通过这个来进一步控制,反正这个在10g及以后就废除了的)

 

ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=3 --最多为10,在开启实例时就自动创建3个ARCn进程。

 

4、手动归档命令及参数选项说明

可在启用自动归档的情况下使用手动归档:

ALTER SYSTEM ARCHIVE LOG CURRENT;

 

THREAD 指定包含要归档的重做日志文件组的线程(用于OracleParallel Server)

SEQUENCE 归档由日志序列号标识的联机重做日志文件组

CHANGE 基于SCN进行归档

GROUP 归档联机重做日志文件组

CURRENT 归档指定线程的当前重做日志文件组

LOGFILE 归档包含有由文件名标识的成员的重做日志文件组

NEXT 将尚未归档的最旧的联机重做日志文件组进行归档

ALL 对指定线程的已满但尚未归档的所有联机重做日志文件组进行归档

START 启用重做日志文件组的自动归档

TO 指定重做日志文件组归档的目标位置

STOP 禁用重做日志文件组的自动归档

 

5、LOG_ARCHIVE_FORMAT格式化参数说明

LOG_ARCHIVE_FORMAT 参数是设置归档命名规则的静态参数,设置后重启数据库才生效。

 

例子:

LOG_ARCHIVE_FORMAT=arch%s.arc

文件名选项

%s 或 %S:包括日志序列号,作为文件名的一部分。

%t 或 %T:包括线程号,作为文件名的一部分。使用 %S 可通过在值的左侧用0 来填补空位使该值长度保持固定。

%a activation ID

%d database ID

%r resetlogs ID

 

6、归档路径LOG_ARCHIVE_DEST_n等设置

LOG_ARCHIVE_DEST_n(其中,n = 1、2、3、4、5...10) 与 LOG_ARCHIVE_DEST 、 LOG_ARCHIVE_DUPLEX_DEST( LOG_ARCHIVE_DEST 静态参数指定主位置,使用LOG_ARCHIVE_DUPLEX_DEST 参数定义备份目标)是互斥的:

 

对于Oracle 企业版用户,建议不要使用LOG_ARCHIVE_DEST 参数,而使用LOG_ARCHIVE_DEST_n 参数。如果未安装Oracle 企业版,或已安装但尚未指定任何 LOG_ARCHIVE_DEST_n 参数,则该参数(LOG_ARCHIVE_DEST 、 LOG_ARCHIVE_DUPLEX_DEST)有效。

 

LOG_ARCHIVE_DEST_n 选项

例子:

log_archive_dest_1="LOCATION=/archive/ MANDATORY REOPEN"

log_archive_dest_2="SERVICE=standby_db1 MANDATORY REOPEN=600"

log_archive_dest_3="LOCATION=/archive2/ OPTIONAL"

 

远程目标的 Oracle Net 别名,由关键字SERVICE指定。指定的服务名通过使用本地的 tnsnames.ora文件进行解析,以标识远程数据库。至少一个目标指定LOCATION 参数。

 

MANDATORY 表示必须成功完成归档到该目标的操作才可以覆盖联机重做日志文件。

OPTIONAL 表示即使联机重做日志文件尚未成功地归档到该目标,也可以重新使用。这是缺省设置。

 

REOPEN属性定义发生故障时是否必须重新尝试归档到目标。缺省值为300 秒。归档到目标的尝试次数没有限制。归档中的所有错误将在主站点的警报文件中报告。如果未指定 REOPEN,则可选目标上的错误将被记录并忽略。不再将重做日志发送到这些目标。在归档成功之前,强制目标上的错误将导致无法重新使用联机重做日志。只要归档不成功,归档目标的状态就设置为ERROR。

 

7、归档的目标状态--LOG_ARCHIVE_DEST_STATE_n 参数

LOG_ARCHIVE_DEST_STATE_n 参数

归档目标的状态可以动态地进行更改。缺省情况下,归档目标是ENABLE状态,表明Oracle 服务器可以使用该目标。

 

归档目标的状态可以通过设置相应的LOG_ARCHIVE_DEST_STATE_n 参数来进行修改。例如,要在发生错误时暂时停止归档到强制位置,可以将该目标的状态设置为DEFER。当另一目标出现错误或需要维护时,可以启用该目标。

 

注:如果一个目标的状态设置为DEFER,则不会执行归档到该目标的操作。如果该目标的状态更改为 ENABLE,则必须手动将所有缺失的日志归档到该目标。

 

 

8、指定成功归档位置的最小数量--LOG_ARCHIVE_MIN_SUCCEED_DEST 参数

LOG_ARCHIVE_MIN_SUCCEED_DEST 参数的值。该参数用于为需要归档的本地目标数指定一个下限值。如果该值小于强制本地目标的数量,则它对归档行为没有影响。如果该值大于强制本地目标的数量,则本地归档目标的数量必须至少等于该值,才可以重新使用联机重做日志文件。

 

只有在下列情况下才能重新使用联机重做日志组:

– 已归档到所有强制位置MANDATORY

– 已归档的本地位置数大于或等于LOG_ARCHIVE_MIN_SUCCEED_DEST 参数的值

 

9、归档日志常用数据字典

 V$ARCHIVED_LOG:显示控制文件中的归档日志信息。

 V$ARCHIVE_DEST:对于当前例程,说明所有归档日志目标、当前值、模式和状态。

 V$LOG_HISTORY:包含控制文件中的日志文件信息。

 V$DATABASE:归档的当前状态。

 V$ARCHIVE_PROCESSES:提供有关例程的各种ARCH 进程的状态的信息。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29844843/viewspace-1328559/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-10-08

  • 博文量
    137
  • 访问量
    242809