归档重做日志文件的概念和选择

Oracle数据库能够把已经写满了的重做日志文件保存到一个或多个指定的离线位置,这种保存的文件为归档重做日志文件。通常情况下一个归档重做日志时一个被LGWR写满的重做日志文件组的一个成员的拷贝,

包含所有的重做记录及日志序列号等信息。

如果一个数据库应用系统不能承受任何的数据丢失,即使是介质损坏,也需要数据完全恢复,那么必须将数据库运行在归档模式。

1.非归档模式

此时数据库系统不会对被LGWR进程写满了的重做日志文件进行归档操作,所有的历史重做日志信息都将被覆盖而不复存在。因此,非归档模式下日志切换的前提条件是已写满的重做日志文件在被覆盖之前,其所有的重做记录所对应的

事务的操作结果全部写入数据库的数据文件中与归档无关。

在非归档模式下,数据库只能从市里崩溃中恢复,而无法进行介质的恢复。

2.归档模式

归档模式下切换日志的前提条件是已写满的重做日志文件在被覆盖之前。其所有重做记录所对应的事务操作结果全部写入数据文件中,而且归档进程要完成对该重做日志文件的归档操作。

主要具有的优点有:

(1)由于在归档模式下,数据库中所有的实力重做日志文件全部被保存,因此在数据库出现故障,即使是介质故障的情况下,利用数据库备份、归档重做日志文件盒联机重做日志文件也可以恢复数据库。

(2)在归档模式下,可以在数据运行时进行备份,也可以利用该备份恢复数据库.

(3)  在主数据库与备用数据库配置中,利用归档日志文件信息,可以保证备用数据库与主数据库达到相同的状态。

归档控制

     1.改变数据归档模式

可以通过archive log list命令查看当前数据库的归档设置情况

SQL> archive log list;
数据库日志模式 存档模式
自动存档 启用
存档终点 USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列 1
下一个存档日志序列 2
当前日志序列 2

  将数据库从非归档模式转到归档模式

(1)关闭数据库

shutdown

(2) 备份数据库

(3)设置归档的目的地

(4)将数据库到加载状态

(5)改变数据库的归档模式

(6)打开数据库

3.手动归档

alter database archivelog manual

4.调整归档进程数量。

打开数据库是,启动归档进程的初始化数量的参数LOG_ARCHIVE_MAX_PROCESSES指定,默认为4.通常不需要修改该参数。

该参数为动态参数,可以使用 alter system set LOG_ARCHIVE_MAX_PROCESSES=6;

SQL> show parameter LOG_ARCHIVE_MAX_PROCESSES;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ----------
log_archive_max_processes integer 4
SQL> alter system set LOG_ARCHIVE_MAX_PROCESSES=6;
系统已更改。
SQL> alter system set LOG_ARCHIVE_MAX_PROCESSES=4;
系统已更改。

设置归档目的地

1.设置初始化参数指定归档目的地

可以通过设置LOG_ARCHIVE_DEST设置一个本地归档目的地,也可以通过初始化参数设置LOG_ARCHIVE_DEST_n设置两个或多个归档目的地。

2.设置LOG_ARCHIVE_DEST_n

(1) 初始化参数LOG_ARCHIVE_DEST_n最多能设置31个归档目的地,即n为1-31,其中1-10可以用来指定本地或远程的归档目的地,11-31只能用于指定远程的归档目的地。

SQL> alter system set LOG_ARCHIVE_DEST_6='LOCATION=d:\DISK4\ARCHIVE';

系统已更改。

     (2)设置初始化参数LOG_ARCHIVE_FORMAT,指定归档文件命名方式

SQL> show parameter log_archive_format

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_format string ARC%S_%R.%T
SQL> alter system set log_archive_format = 'arch_%t_%s_%r.arc' scope=spfile;

系统已更改。

  %s 表示日志序列号

%t 表示线程好

%r  表示重做日志的ID

大写的标志不足3为左侧添0

使用LOG_ARCHIVE_DEST_n参数的时候,可以指定OPTIONAL(默认 或者MANDATORY)选项。

下面说明:OPTIONAL选项:该选项是默认选项,表示可选的归档目的地。使用该选项,无论在该归档目的地上是否成功归档,都可以覆盖重做日志文件,数据库正常运行。

MANDATORY:该选项正好相反,重做日志必须归档成功,如果失败,重做日志将不能覆盖,数据库将被挂起。

REOPNE:该属性用于指定重新归档的时间间隔,默认值为300.

3.设置初始化参数LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST

如果设置主/次两个本地归档目的地,可以使用初始化参数LOG_ARCHIVE_DEST设置主目的地,LOG_ARCHIVE_DUPLEX_DEST设置次目的地。

步骤

(1)查询数据字典视图 V$ARCHIVE_DEST,查看初始化参数LOG_ARCHIVE_DEST_n是否已经设置,如果设置了需要清空

SQL> select dest_name,destination from v$archive_dest;

DEST_NAME                                                                        DESTINATION
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
LOG_ARCHIVE_DEST_1
LOG_ARCHIVE_DEST_2
LOG_ARCHIVE_DEST_3
LOG_ARCHIVE_DEST_4
LOG_ARCHIVE_DEST_5
.......... 31 rows selected

  全部清空

alter system set LOG_ARCHIVE_DEST_1 =‘’;

(2)设置初始化参数LOG_ARCHIVE_DEST和LOG_ARCHIVE_DUPLEX_DEST.指定两个主次目的地。

(3)设置初始化参数LOG_ARCHIVE_FORMAT

4.归档目的地的状态

SQL> select dest_name,status from v$archive_dest;

DEST_NAME                                                                        STATUS
-------------------------------------------------------------------------------- ---------
LOG_ARCHIVE_DEST_1 INACTIVE
LOG_ARCHIVE_DEST_2 INACTIVE
LOG_ARCHIVE_DEST_3 INACTIVE
LOG_ARCHIVE_DEST_4 INACTIVE

  通过参数LOG_ARCHIVE_DEST_STATE_n可以控制指定归档目的地的状态。

该参数取值为ENABLE:b标识归档目的地可以使用

DEFER:该归档目的地暂不能使用

ALTERNATE:为备用目的地。

5.设置备用归档目的地。

如果住归档目的地不可用,可以自动切换到备用归档目的地,以免数据库无法归档而挂起。需要在主目的地使用NOREOPEN或者REOPEN=0属性。

查询归档重做日志文件信息

1.执行archive log list

SQL> archive log list
数据库日志模式 存档模式
自动存档 启用
存档终点 d:\DISK4\ARCHIVE
最早的联机日志序列 1
下一个存档日志序列 2
当前日志序列 2

 2.查询动态性能视图

V$ARCHVIED_LOG

V$ARCHVIE_DEST

V$LOG_HISTORY

V$DATABASE

V$ARCHIVE_PROCESSES

Oracle数据库体系结构(6)数据库归档重做日志文件管理的更多相关文章

  1. Oracle RACDB 增加、删除 在线重做日志组

    Oracle RACDB 增加.删除 在线重做日志组 select * from v$log;select * from v$logfile ; ----删除日志组:alter database dr ...

  2. ORACLE 移动数据文件 控制文件 重做日志文件

    ORACLE数据库有时候需要对存储进行调整,增加分区.IO调优等等,此时需要移动数据文件.重做日志文件.控制文件等等,下文结合例子总结一下这方面的知识点. 进行数据文件.重做日志文件.控制文件的迁移前 ...

  3. oracle 11g 数据库恢复技术 ---01 重做日志

    一 redo log Oracle数据库中的三大核心文件分别是数据文件(data file).重做日志(redo log)和控制文件(control file).数据文件保证了数据库的持久性,是保存修 ...

  4. Oracle学习笔记--第2章 oracle 数据库体系结构

    第2章 oracle 数据库体系结构 目录: ————————————— 2.1物理存储结构 2.1.1数据文件 2.2.2控制文件 2.1.3重做日志文件 2.1.4其他文件 2.2逻辑存储结构 2 ...

  5. oracle数据库体系结构

    一.oracle数据库体系结构 基本组成: Oracle server:一般情况下是一个instance和一个database组成 一般:1个instance只能对应一个数据库. 特殊:1个数据库可以 ...

  6. Oracle数据库——体系结构

    一.涉及内容 1.了解数据库的物理存储结构和逻辑存储结构 二.具体操作 1.分别使用SQL 命令和OEM 图形化工具查看本地数据库的物理文件,并使用OEM 工具在现有的users 表空间中添加user ...

  7. oracle数据库表空间及归档

    --表空间(TableSpace)是Oracle的开创性理念.表空间使得数据库管理更加灵活,而且极大地提高了数据库性能. --作用 :1.避免磁盘空间突然耗竭的风险 2.规划数据更灵活 3.提高数据库 ...

  8. (Les16 执行数据库恢复)-重做日志文件恢复

    丢失重做日志文件         丢失了重做日志文件组中的某个成员,并且组中至少还有一个成员:             -不会影响实例的正常操作.             -预警日志中会收到一条信息, ...

  9. Oracle数据库体系结构(1)整体概述

    oracle数据库的存储结构: 逻辑存储结构:oracle内部的组织和管理数据的方式 物理存储结构:oracle外部(操作系统)组织和管理数据的方式 oracle对逻辑存储结构和物理存储结构的管理是分 ...

随机推荐

  1. Oracle 格式化中文时间

    SELECT TO_CHAR(SYSDATE, 'MM"月"DD"日"') A FROM dual; --注: 当格式字符串当中, 存在 自定义的字符信息的时候 ...

  2. (五)Thymeleaf标准表达式之——[7->8]条件表达式& 默认表达式

    2.7 条件表达式 模板名称:condition-express.html <1>a ? b:c  (if then:else) <2>a?c (if else) 条件表达式( ...

  3. 2.JAVA编程思想——一切都是对象

    一切都是对象 欢迎转载.转载请标明出处:http://blog.csdn.net/notbaron/article/details/51040221 虽然以C++为基础,但 Java 是一种更纯粹的面 ...

  4. zabbix api创建screen vsize限制解决

    通过脚本调用zabbix api 生成screen报错: "vsize": must be between "1" and "100" 查看 ...

  5. VB中的排序问题 15个

    首次接触VB,以下就先进行VB中的排序问题                   Dim a As Integer Dim b As Integer Dim c As Integer Dim d As ...

  6. Android加入新的视频格式--媒体库扫描

    需求:在mediaprovider数据库中加入.mov后缀格式的视频文件 能够使用工具MediaInfo_GUI_0.7.67_Windows.3243836749.exe 查看mov文件编码格式类型 ...

  7. jsp 页面导出excel时字符串数字变成科学计数法的解决方法

    web导出excel数据格式化 原文地址:http://www.cnblogs.com/myaspnet/archive/2011/05/06/2038490.html   当我们把web页面上的数据 ...

  8. nginx 的uri、request_uri 区别

    在nginx中有几个关于uri的变量,包括$uri $request_uri $document_uri,下面看一下他们的区别 : $request_uri: /stat.php?id=1585378 ...

  9. Power of Cryptography - poj 2109

      Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 20351   Accepted: 10284 Description C ...

  10. Java并发基础:了解无锁CAS就从源码分析

    https://segmentfault.com/a/1190000015881923