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

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. 关于 Nginx 并发连接数

    关于 Nginx 并发连接数 最近在学习使用 nginx , 做一些简单的压力测试时,发现并发连接数最大只能上到 100 多 测试刚开始时的状态 , netstat -n | awk '/^tcp/ ...

  2. DICOM医学图像处理:WEB PACS初谈二,图像的传输

    背景: 如前一篇专栏博文所述,借助于CGI或FastCGI技术转发浏览器发送过来的用户请求,启动本地的DCMTK和CxImage库响应.然后将处理结果转换成常规图像返回到浏览器来实现Web PACS. ...

  3. 谈谈WEB开发中的苦大难字符集问题

    http://www.lanceyan.com/tech/arch/web_luanma.html记得刚做javaweb开发的时候被这个编码问题搞得晕头转向,经常稀里糊涂的编码正常了一会编码又乱了.那 ...

  4. Ffmpeg音频转码 卡顿(MP2转AAC)

    最好经手一个小的功能将mp2实时流转成AAC并发布成rtmp音频流,本身不是很难的一个需求, 一个晚上就能将功能开发好.功能开发完毕后,找来一音频文件利用Ffmpeg命令将音视频文件推成 实时udp格 ...

  5. 开源项目UIL(UNIVERSAL-IMAGE-LOADER)

    1 http://www.cnblogs.com/osmondy/p/3266023.html 2 待续

  6. 了解MVC框架开发

    版权声明:本文为博主原创文章,未经博主允许不得转载. 前言:本篇文章我们浅谈下MVC各个部分,模型(model)-视图(view)-控制器(controller), 以及路由. 对于使用MVC的好处大 ...

  7. .NET CORE 2.0小白笔记(四):asp.net core输出中文乱码的问题

    问题描述:在学习asp.net core的时候,尝试在控制台,或者页面上输出中文,会出现乱码的问题. 分析解决:控制台乱码的原因是因为中文windows命令行默认编码页是gb2312,想输出中文只要把 ...

  8. Android入门 在ListView中如何进行精确的定位

      在android的开发中,经常会遇到需要主动去设定某条ListItem的位置的需求.设置位置的函数有 ListView.setSelection(int position) ListView.se ...

  9. 【Hadoop基础教程】2、Hadoop之单机模式搭建(转)

    单机模式所需要的系统资源是最少的,这种安装模式下,Hadoop的core-site.xml.mapred-site.xml.hdfs-site.xml配置文件均为空.默认情况下,官方hadoop-1. ...

  10. atitit.基于bat cli的插件管理系统.doc

    atitit.基于bat cli的插件管理系统.doc /AtiPlatf/src_atibrow/com/attilax/cmd/CmdX.java pathx.isWebPathMode=true ...