oracle redo 重做日志文件

以下易容翻译自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

时间: 2024-12-23 00:54:22

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

oracle联机重做日志文件(online redo log file)

oracle联机重做日志文件(online redo log file几乎所有的发生在oracle的内部变化都记录在online  redo log file中,oracle使用 这些 redo log groups 去恢复数据库,因此它们是非常的重要. 联机重做日志文件的主要工作是:备份数据,1:记录所有的数据改变2:提供了一种恢复机制3:一定是被组织成组的4:至少有两组联机重做日志文件 每一个redo  log 是被分配到 组中, oralce 一次值写一个 online redo log

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

--========================================= -- Oracle 联机重做日志文件(ONLINE LOG FILE) --========================================= 一.Oracle中的几类日志文件 Redo log files      -->联机重做日志 Archive log files   -->归档日志 Alert log files     -->告警日志 Trace files        

ORACLE - 管理重做日志文件

ORACLE重做日志文件用于在数据库崩溃等情况下用于恢复数据,默认情况下为三个文件redo01.log/redo02.log/redo03.log,文件组循环使用,在录入与更新操作比较多的应用中,日志文件更新比较繁忙. 1. 查询日志文件: SQL>select * from v$logfile; SQL>select group# as gid,bytes,status,members from v$log; --status 为current则代表正在使用 2. 在挂载新的磁盘时可考虑创建

ORACLE配置重做日志文件

oracle服务器上已提交的数据都被记录在重做日志文件上,一旦数据库崩溃,就可以使用重做日志文件恢复数据. 查看数据库目前的重做日志文件配置 select GROUP#, SEQUENCE#, BYTES, MEMBERS, STATUS, ARCHIVED from v$log; 结果: 可以看出:目前有3个重做日志组(group),每组一个重做日志文件(MEMBERS),每个文件200M,当前组是第一组. select * from v$logfile; 3个重做文件组都位于同一块盘,同一文

oracle 重做日志文件无法自动创建保存问题Thread 1 cannot allocate new log, sequence 233678

Mon Nov 26 09:10:16 2018 Thread 1 cannot allocate new log, sequence 233678 Checkpoint not complete Current log# 1 seq# 233677 mem# 0: D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG Thread 1 advanced to log sequence 233678 (LGWR switch) Current log# 2 s

Oracle重做日志文件

http://blog.csdn.net/leshami/article/details/5749556 一.Oracle中的几类日志文件 Redo log files      -->联机重做日志 Archive log files   -->归档日志 Alert log files     -->告警日志 Trace files         -->跟踪日志 user_dump_dest          -->用户跟踪日志 backupground_dump_dest

修改重做日志文件(redo log)大小

重做日志相关数据字典 1.v$log  记录数据库中有多少个重做日志组,每个组中有多少个成员.日志大小及状态 2.v$logfile 记录着每个日志组成员的属性.文件路径.文件名.状态等 操作步骤 1.查看现有日志组及重做文件大小 SQL> select group#,sequence#,bytes/1024/1024 sizeMB,members,status from v$log; GROUP# SEQUENCE# SIZEMB MEMBERS STATUS ---------- -----

Oracle 11g 管理重做日志文件

重做日志也称联机重做日志.引入重做日志的目的是数据恢复.在数据库运行过程中,用户更改的数据会暂时存放在数据库的高速缓冲区中.为了提高写数据的速度,并不是一旦有数据变化,就把变化的数据写到数据文件中.频繁的读写磁盘文件会使数据库系统效率降低,所以要等到数据库高速缓冲区中的数据达到一定的量或者满足一定的条件时,DBWR进程才会将变化了的数据写到数据文件中.这种情况下如果在DBWR把变化了的更改写到数据文件之前发生了宕机,那么数据高速缓冲区中的数据就会全部丢失.如果在数据库重新启动后无法恢复这部分用户

数据库恢复之丢失联机重做日志文件的恢复

联机重做日志文件用来循环记录ORACLE数据库的所有操作,几乎时刻都在读写,因此单纯备份某个时间点的联机重做日志文件没有意义,恢复时根本用来上.RMAN的备份里根本就没有备份联机重做日志的功能,而且不止RMAN,所有的备份软件都没有备份联机重做日志文件的说法.因此,丢失联机重做日志后的数据库恢复也用不到RMAN. 如果ORACLE数据库在启动时发现丢失某一某一联机重做日志文件,则直接报错.ORACLE通过文件冗余的方式来确保联机重做日志文件的安全.即每组联机重做日志创建 多个文件,至少两个,每个