Oracle的重做日志

简介:
Oracle数据库在运行当中,用户更改的数据首先会存放在数据库高速缓冲区当中,为了提升磁盘读写,oracle机制不会频繁的将缓冲区的数据写到磁盘,而是等到检查点或者数据高速缓冲区达到一定数量时才会写入数据库文件;倘若在检查点或者数据量等条件还没满足系统就挂了,那么此时用户提交的数据就会丢失,因为数据还在内存里,为了防止数据丢失,oracle提出了重做日志。
重做日志的目的是用来做数据恢复的,LGWR进程负责优先把用户更改的数据写到重做日志文件中。
LGWR的触发条件:
在事务提交的时候(COMMIT)
Redo Log Buffer 三分之一满
Redo Log Buffer 多于一兆的变化记录
在DBWn写入数据文件之前
如果数据库开启了归档(查看是否归档archive log list),那么重做日志会在写满后,关闭当前日志文件并把重做日志文件中的内容移动到归档文件中,归档完毕后轮询下一组可用重做日志组;也叫归档重做日志。
查看系统当前的重做日志文件信息
Oracle的重做日志
如上图数据库有5个日志组,每组日志组有2个日志成员;目测数据库开启了归档模式,当前正在使用的重做日志为第4组重做日志;
查看重做日志文件位置
Oracle的重做日志
重做日志组内的每一个重做日志文件称为一个成员,一个组内的每一个成员具有相同的日志序列号(log sequence number)并且成员的文件大小相同。
Oracle的重做日志
来个自画原理图
Oracle的重做日志
在实际生产中,会需要添加多个重做日志组,且每个日志组至少有一个以上的重做日志成员,并存放于不同的磁盘分区。
实战:添加重做日志组和日志成员。
alter database add logfile group 6 ('/u01/app/oracle/oradata/orcl/redo0601.log','/u01/app/oracle/oradata/orcl/redo0602.log') size 5M;
Oracle的重做日志
以上添加一个重做日志组6,重做日志成员有两个redo0601.log和redo0602.log都为5M大小。
查看刚才添加的日志组使用情况,新添加的是未使用Unused
Oracle的重做日志
实战:删除重做日志组
alter database drop logfile group 6——若active状态不可删除
重做日志组有六种状态:
UNUSED : 表示该联机重做日志文件组对应的文件还从未被写入过数据,通常是刚刚创建的联机重做日志文件或重建后的联机重做日志文件。
CURRENT : 表示当前正在使用的日志文件组。该联机重做日志组是活动的。
ACTIVE : 表示该组是活动的但不是当前组,实例恢复时需要这组日志。如果处于这一状态,表示虽然当前并未使用,文件中的数据没有全部写入数据文件,一旦需要实例恢复,必须借助该文件中保存的内容。可以是已归档或没归档。
INACTIVE: 表示实例恢复已不再需要这组联机重做日志组了,文件中的数据全部写入数据文件。该组联机重做日志当前处于空闲状态。可以是已归档或没归档。
CLEARING:在执行了 ALTER DATABASE CLEAR LOGFILE 后,表示该组重做日志文件正被重建(重建后该状态会变成UNUSED)。
CLEARING_CURRENT:表示该组重做日志重建时出现错误,如io错误。
实战:添加重做日志成员
alter database add logfile member '/u01/app/oracle/oradata/orcl/redo0603.log' to group 6
实战:删除重做日志成员
alter database drop logfile member '/u01/app/oracle/oradata/orcl/redo0603.log'
实战:切换日志
Oracle的重做日志
执行:alter system switch logfile
Oracle的重做日志
切换后变成当前可用状态
Oracle的重做日志
如果要重设重做日志文件大小,需要删除日志组重建重做日志组并设置新的重做成员大小;
1.alter database drop logfile group 6
2.alter database add logfile group 6 ('/u01/app/oracle/oradata/orcl/redo0603.log') size 100M
如果无法删除重做日志组,请执行alter system switch logfile(可以多次执行切换)并查看日志组状态,如果为INACTIVE则可以删除;也可以执行alter database checkpoint,此检查点的功能是LGWR进程把重做日志缓冲区数据写入重做日志文件中,同时通知DBWR进程将数据库高速缓冲区提交的数据写入数据文件中。









本文转自 rm_rf_d 51CTO博客,原文链接:http://blog.51cto.com/12185273/2054957,如需转载请自行联系原作者
相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
监控 Oracle 关系型数据库
Mysql、Oracle审计日志的开启
通过上述步骤,可以在 MySQL 和 Oracle 数据库中启用和配置审计日志。这些日志对于监控数据库操作、提高安全性和满足合规性要求非常重要。确保正确配置审计参数和策略,定期查看和分析审计日志,有助于及时发现并处理潜在的安全问题。
931 11
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的控制文件与归档日志文件
本文介绍了Oracle数据库中的控制文件和归档日志文件。控制文件记录了数据库的物理结构信息,如数据库名、数据文件和联机日志文件的位置等。为了保护数据库,通常会进行控制文件的多路复用。归档日志文件是联机重做日志文件的副本,用于记录数据库的变更历史。文章还提供了相关SQL语句,帮助查看和设置数据库的日志模式。
454 1
【赵渝强老师】Oracle的控制文件与归档日志文件
|
Oracle 关系型数据库 数据库
【赵渝强老师】Oracle的参数文件与告警日志文件
本文介绍了Oracle数据库的参数文件和告警日志文件。参数文件分为初始化参数文件(PFile)和服务器端参数文件(SPFile),在数据库启动时读取并分配资源。告警日志文件记录了数据库的重要活动、错误和警告信息,帮助诊断问题。文中还提供了相关视频讲解和示例代码。
446 1
|
SQL Oracle 关系型数据库
【赵渝强老师】Oracle的联机重做日志文件与数据写入过程
在Oracle数据库中,联机重做日志文件记录了数据库的变化,用于实例恢复。每个数据库有多组联机重做日志,每组建议至少有两个成员。通过SQL语句可查看日志文件信息。视频讲解和示意图进一步解释了这一过程。
371 0
|
SQL Oracle 关系型数据库
"揭秘!一键解锁Oracle日志清理魔法,让海量归档日志无处遁形,守护数据库健康,告别磁盘空间告急噩梦!"
【8月更文挑战第9天】随着Oracle数据库在企业应用中的普及,归档日志管理对保持数据库健康至关重要。归档日志记录所有更改,对数据恢复极为重要,但也可能迅速占用大量磁盘空间影响性能。利用Oracle提供的RMAN工具,可通过编写Shell脚本来自动清理归档日志。脚本包括设置环境变量、连接数据库、检查和删除指定时间前的日志,并记录执行情况。通过Cron作业定时运行脚本,可有效管理日志文件,确保数据库稳定运行。
837 7
|
存储 SQL Oracle
关系型数据库Oracle归档日志备份
【7月更文挑战第19天】
792 5
|
SQL Oracle 关系型数据库
探索 Linux 命令 `db_archive`:Oracle 数据库归档日志的工具
探索 Linux 中的 `db_archive`,实际与 Oracle 数据库归档日志管理相关。在 Oracle 中,归档日志用于恢复,当在线重做日志满时自动归档。管理员可使用 SQL*Plus 查看归档模式,通过 `RMAN` 进行备份和恢复操作。管理归档日志需谨慎,避免数据丢失。了解归档管理对 Oracle 管理员至关重要,确保故障时能快速恢复数据库。
|
SQL 监控 Oracle
Oracle数据误删不用怕,跟我来学日志挖掘
Oracle数据误删不用怕,跟我来学日志挖掘
672 0
|
Oracle 关系型数据库 MySQL
实时计算 Flink版产品使用问题之在online模式下增量抓取Oracle数据时,在archive_log切换时,出现数据丢失的情况,是什么原因
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
SQL DataWorks Oracle
DataWorks产品使用合集之datax解析oracle增量log日志该如何操作
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
273 0

推荐镜像

更多