ORACLE重做日志小结
1.Redo log特点
- 重做日志以磁盘I/O为主,将数据库操作记录到日志文件。(磁盘I\O性能有可能成为瓶颈)
- 每个实例只有一个活动的LGWR(log writer)进程,至少有两个日志组(logfile group),每个日志组至少一个 日志文件,同一日志组多个日志文件内容相同,互为镜像。
- 当一个日志组写满时,LGWR自动切换至下一个日志组,覆盖日志文件内容,继续写入。(频繁的日志切换可能影响性 能)
- 当切换到新的日志组时,如果DBWR(db writer)尚未将所有修改写入数据文件,LGWR将等待写入完成。(DBWR的 写入速度可能导致性能瓶颈)
- 增大日志文件可以减少日志切换频率,但会增加数据恢复的时间,同时,当日志文件损坏时,将会丢失更多的数据。
2.日志文件切换时间查询
Select a.sequence#, b.sequence#, a.first_time, b.first_time,
round((a.first_time-b.first_time)*60*60*24,2) timeInterval
from v$log_history a
left join v$log_history b
on a.sequence#=b.sequence#+1 and a.thread#=b.thread#
(Oracle建议日志文件切换时间为20分钟,调整日志文件大小以改变这一时间)
3.Redo log优化
- 同一日志组的日志文件分别放在不同的磁盘上,减少日志文件写入、日志切换时的竞争。
- 适当增大日志文件可以降低日志切换频率和LGWR等待DBWR的几率。
- 将日志文件放于RAID10或RAID0磁盘阵列中以提高写入性能。
- 增加DBWR进程数,提高数据写入性能。
4.创建、切换、删除日志文件组
调整日志文件大小只能通过,创建新的日志文件组,切换日志文件组,删除旧的日志文件组的方式进行。
创建日志文件组
alter database add logfile group 4(‘D:\redo4.log’) size 1024M reuse;
查看日志文件组状态切换日志文件组
select group#, status from v$log;
删除日志文件组(切换至INACTIVE状态再进行删除)
alter database drop logfile group 1;
ORACLE重做日志小结的更多相关文章
- Oracle重做日志恢复数据模拟实验
一 系统环境: 1.操作系统:oracle Linux 5.6 2.数据库: Oracle 11g 二 Oracle 重做日志的作用: [模拟介质恢复] 1. 关闭数据库归档模式: [oracle@t ...
- Oracle重做日志文件
一.联机重做日志的规划管理 1.联机重做日志 记录了数据的所有变化(DML,DDL或管理员对数据所作的结构性更改等) 提供恢复机制(对于意外删除或宕机利用日志文件实现数据恢复) 可以被分组管理 11 ...
- oracle重做日志文件硬盘坏掉解决方法
rman target/ list backup; list backup summary; 删除数据库数据文件夹下的log日志,例如/u01/app/oracle/oradata/ORCL下的所有后 ...
- 初识oracle重做日志文件
转自 http://blog.csdn.net/indexman/article/details/7746948 以下易容翻译自oracle dba官方文档,不足之处还望指出. 管理重做日志文件 学习 ...
- Oracle重做日志REDO
什么是重做? 重做日志包含所有数据产生的历史改变记录. 重做日志目的是保证数据的安全,如果数据因特殊原因没有写到磁盘上,可以通过重做日志来恢复. 重做日志文件通常用于 恢复(实例恢复和介质恢复) 日志 ...
- oracle 重做日志
原创转载请注明出处 重做日志:记录数据库数据的变化(DDL,DML) 重做日志组:由一个或者多个完全一样的重做日志文件组成,如果一个日志组有多个日志文件,后台进程LGWR会把事务变化写到同一个日志组的 ...
- Oracle重做日志和日志挖掘
重做日志-Redo log 首先给出参考资料: 1.Oracle官网-Managing the Redo Log 为什么需要redo log 内存中数据修改后,不必立即更新到磁盘---效率 由日志完成 ...
- 修改oracle重做日志文件大小
创建3个新的日志组 SQL> ALTER DATABASE ADD LOGFILE GROUP 4 ('/u01/app/oracle/oradata/orcl/redo06.log') SIZ ...
- ORACLE - 管理重做日志文件
ORACLE重做日志文件用于在数据库崩溃等情况下用于恢复数据,默认情况下为三个文件redo01.log/redo02.log/redo03.log,文件组循环使用,在录入与更新操作比较多的应用中,日志 ...
随机推荐
- 1、flink介绍,反压原理
一.flink介绍 Apache Flink是一个分布式大数据处理引擎,可对有界数据流和无界数据流进行有状态计算. 可部署在各种集群环境,对各种大小的数据规模进行快速计算. 1.1.有界数据流和无界 ...
- 批量查询PDF文本并导出结果的小工具
效果: 批量查询指定关键字 & 指定目录下PDF文件中的文本,并导出文件路径和关键字所在文本行. 下载: 链接: https://pan.baidu.com/s/1sK2OMMgGX26l7P ...
- linux sort 命令实用手册
Linux 中的sort 命令是一个很实用的工具,用于对文本内容以行为单位进行ASCII 码排序,默认按照升序进行排序(当然也可以按照降序). sort 命令的格式如下: sort `参数` `文件名 ...
- Session服务器之Redis
Session服务器之Redis Redis与Memcached的区别内存利用率:使用简单的key value (键值对)存储的话,Mermcached 的内存利用率更高,而如果Redis采用hash ...
- 基于ONOS的T-SDN Super控制器,突破多域网络运营的难关
在法国尼斯举办的IIR WDM波分论坛(Next Generation Optical Networking)上,华为展示了T-SDN(Transport SDN,传送SDN)领域的众多新技术,其中T ...
- Spring PropertyPlaceholderConfigurer类载入外部配置
2019独角兽企业重金招聘Python工程师标准>>> 通常在Spring项目中如果用到配置文件时,常常会使用org.springframework.beans.factory.co ...
- double运算的坑
某个结果运算后,得出的数据:a = 15.599999999 而不是15.6,导致条件判断 a < 15.6 为true,使程序出现bug 解决办法,对运算后的浮点数,进行格式化(以保留一位小数 ...
- Effective C++学习记录
Effective C++算是看完了,但是并没有完全理解,也做不到记住所有,在此记录下55个条款及条款末的"请记住". 让自己习惯C++ 条款01:视C++为一个语言联邦 ① C ...
- socket编程之时间回射服务器
使用到的函数: // 返回值:读到的字节数,若已到文件尾,返回0:若出错,返回-1 ssize_t read(int fd, void *buf, size_t nbytes); // 返回值:若成功 ...
- ASP.NET Core 如何使用Mvc相关技术建立Controller、Tag Helper (下)
上篇文章介绍了通过定义两个接口和服务类,分别实现这两个接口,并且进行了一个服务的注册. 今天就来建立Controller 接下来就是在控制器中通过构造函数的方式注入接口(见代码块6行) 代码块2行的意 ...