以下易容翻译自oracle dba官方文档,不足之处还望指出。

管理重做日志文件

学习目标:
1.解释重做日志文件的目的
2.描述重做日志文件的结构
3.学会控制日志切换与检查点
4.多元化管理重做日志文件
5.使用OMF管理重做日志文件

1.概念介绍:
重做日志文件通过记录数据的所有改变情况对系统或介质故障提供恢复机制。
1)重做日志文件以组的形式存在
2)一个oracle数据库至少需要两组,每组至少有一文件
3)在一组里的每一重做日志文件叫做成员
The redo log files are used only for recovery.

2.重做日志文件结构:

1)重做日志文件组
a.一组相同的副本联机重做日志文件被称为一个联机重做日志组。
b.LGWR进程并发的往日志组里所有重做日志文件写入相同信息
2)重做日志文件
a.一个组每个成员用于同一log sequence numbers和相同的大小
b.每次oracle服务器开始写入日志组时分配日志序列号来唯一标识每个重做日志文件
c.当前的日志序列号存储在控制文件和所有数据文件的头部

3.重做日志如何工作?

1)重做日志以循环的方式使用
2)当一个重做日志文件写满,LGWR进程将移动到下一日志组
a.这一步骤叫做log switch
b.checkpoint在此时发生
c.信息被写入控制文件中
3)以下情况将触发LGWR进程写操作:
a.当commit事务发生
b.当redo log buffer存储达到1/3
c.当重做日志缓冲区有超过一个兆字节的更改记录
d.在DBWn将buffer cache修改过的数据块的信息写入到数据文件之前

4) 以下情况发生check point:
a.每次日志切换时
b.实例通过normal,transactional,immediate选项关闭时
c.通过设置初始化参数FAST_START_MTTR_TARGET强制发生
d.数据库管理员手工设置ALTER SYSTEM CHECKPOINT、alter tablespace ,datafile offline
e.使用alter tablespace[OFFLINE NORMAL|READ ONLY|BEGIN BACKUP] 语句导致指定数据文件发生检查点

注:如果参数LOG_CHECKPOINTS_TO_ALERT 设置为true,则每次检查点信息将记录在alert_SID.log文件中.

4.如何增加、删除重做日志文件(组)?

a.增加重做日志文件组:
ALTER DATABASE ADD LOGFILE GROUP 3 ('$HOME/ORADATA/u01/log3a.rdo',
 '$HOME/ORADATA/u02/log3b.rdo') SIZE 1M;

b.增加重做日志文件:
ALTER DATABASE ADD LOGFILE MEMBER
'$HOME/ORADATA/u04/log1c.rdo' TO GROUP 1,
'$HOME/ORADATA/u04/log2c.rdo' TO GROUP 2,
'$HOME/ORADATA/u04/log3c.rdo' TO GROUP 3;

c.删除重做日志文件组:
ALTER DATABASE DROP LOGFILE GROUP 3;

d.删除重做日志文件:
ALTER DATABASE DROP LOGFILE MEMBER '$HOME/ORADATA/u04/log3c.rdo';

5.清理,重新分布或重命名重做日志文件?

a.清理重做日志文件
ALTER DATABASE CLEAR LOGFILE '$HOME/ORADATA/u01/log2a.rdo';

b.重新分布或重命名重做日志文件
通过删除旧日志文件,新增新日志文件实现。

6.如何获取oracle数据库日志组和成员信息?
△V$LOG
△V$LOGFILE

从控制文件获取重做日志文件信息:
SELECT group#, sequence#, bytes, members, status 
FROM v$log;

原文地址:http://blog.csdn.net/indexman/article/details/7746948

oracle redo 重做日志文件的更多相关文章

  1. Oracle 联机重做日志文件(ONLINE LOG FILE)

    --========================================= -- Oracle 联机重做日志文件(ONLINE LOG FILE) --================== ...

  2. ORACLE - 管理重做日志文件

    ORACLE重做日志文件用于在数据库崩溃等情况下用于恢复数据,默认情况下为三个文件redo01.log/redo02.log/redo03.log,文件组循环使用,在录入与更新操作比较多的应用中,日志 ...

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

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

  4. Oracle重做日志文件

    一.联机重做日志的规划管理 1.联机重做日志 记录了数据的所有变化(DML,DDL或管理员对数据所作的结构性更改等) 提供恢复机制(对于意外删除或宕机利用日志文件实现数据恢复) 可以被分组管理  11 ...

  5. 初识oracle重做日志文件

    转自 http://blog.csdn.net/indexman/article/details/7746948 以下易容翻译自oracle dba官方文档,不足之处还望指出. 管理重做日志文件 学习 ...

  6. oracle重做日志文件硬盘坏掉解决方法

    rman target/ list backup; list backup summary; 删除数据库数据文件夹下的log日志,例如/u01/app/oracle/oradata/ORCL下的所有后 ...

  7. Oracle数据库重做日志及归档日志的工作原理说明

    Oracle数据库重做日志及归档日志的工作原理: lgwr进程将redo log buffer中的重做数据写入到redo log中,此时的redo log分组,每当一个redo log group写满 ...

  8. InnoDB存储引擎的表空间文件,重做日志文件

    存储引擎文件:因为MySQL表存储引擎的关系,每个存储引擎都会有自己的文件来保存各种数据.这些存储引擎真正存储了数据和索引等数据. 表空间文件 InnoDB存储引擎在存储设计上模仿了Oracle,将存 ...

  9. 记录一则clear重做日志文件的案例

    1.官方文档描述 2.故障报错信息 3.分析解决问题 1.官方文档描述 关于Clearing a Redo Log File的官方文档描述: A redo log file might become ...

随机推荐

  1. 【Unity3D/C#】利用IEnumerable<>和yield产生斐波那契数列

    using UnityEngine; using System.Collections; using System.Collections.Generic; public class YieldTes ...

  2. matlab 基本操作

    导入excel 右键excel文件, import data, 选择column vector点击导入即可, 在右侧的workspace就可以看到添加的列变量了 在workspace中右键添加clas ...

  3. Cause: java.sql.SQLException: 无法转换为内部表示(Mybatis)

    公司开发档案系统使用框架:Spring+Struts2+Mybatis+EasyUI,在开发过程中出现sql异常:“Cause: java.sql.SQLException: 无法转换为内部表示”,错 ...

  4. centos6安装lnmp

    CentOS 6 默认仓库不包含nginx,我们可以手动添加nginx的仓库. 访问nginx官网获取repo文件 我们需要先访问nginx的官方网站,获取官方的仓库地址.点击这里访问nginx官方文 ...

  5. 零基础逆向工程29_Win32_03_ESP寻址_定位回调函数_子窗口_消息处理函数

    1 Win32应用程序入口识别 思路:根据WinMain的四个参数,由调用顺序,知道最后压栈的是hInstance句柄(也就是WinMain函数的第一个参数,其值等于ImageBase),根据反汇编, ...

  6. 正则表达式---01 js篇

    本文主要针对js中正则表达式的实践操作,来让大家对正则表达式有一个入门清晰的了解. 正则表达式推荐学习网址:http://www.runoob.com/regexp/regexp-tutorial.h ...

  7. TP5.0:同一个控制器访问不同方法

    首先,我把TP框架的内容放置在manualtp5文件夹 在manualtp5/application/index/controller/index控制器中定义两个方法: 我们都知道,如果我们网址中不输 ...

  8. TTTAttributedLabel

    TTTAttributedLabel 库地址 https://github.com/TTTAttributedLabel/TTTAttributedLabel #import "ViewCo ...

  9. linux 命令——27 chmod

    chmod命令用于改变linux系统文件或目录的访问权限.用它控制文件或目录的访问权限.该命令有两种用法. 一种是包含字母和操作符表达式的文字设定法: 另一种是包含数字的数字设定法. Linux系统中 ...

  10. Sql Server 表的复制

    声名:A,B ,都是表 --B表存在(两表结构一样)insert into B select * from A 若两表只是有部分(字段)相同,则 insert into B(col1,col2,col ...