Oracle Redo 以及 Archived日志简述
Oracle通过Redo Archived实现数据的归档
什么是Redo日志
Redo日志记录了数据的变更,用于在数据库出现故障后,进行数据恢复。
功能主要由三个组件实现:Redo Log Buffer、LGWR后台进程、Redo Log File。
Redo Log Buffer是Oracle共享内存中的一段空间,记录了数据库的变更历史,包括:insert,update,delete,create,alter,drop等。
过程:
- 用户内存中的记录 --复制--> SGA中的Redo Log Buffer。
- Redo Log Buffer --LGWR写入--> Redo Log File中
当用户积累了一定量的操作后,才会定期的导入到磁盘。
Redo Log Buffer是循环利用的。Redo Log File也是循环利用的。
Redo Log File通过用户组重用日志,可以通过命令查询:
select group#,members,status from v$log;
一般来说默认oracle会有3个日志组,每次往一个日志文件里面顺序写,如果写满;则会切换日志文件,继续写。
什么是Archived日志
Archived日志也叫作归档日志,是数据库运行在归档模式下的产物。
可以通过命令查看,数据库是否运行在归档模式下:
select log_mode from v$database;
归档模式与非归档模式的区别:
- 归档模式,就是当redo日志写满后,是否把该日志内容拷贝到归档日志进行统一的存储,避免下次写入的时候覆盖。
- 非归档模式,即不适用归档模式,当日志写满后,直接切换日志,而不做任何的备份。下次轮到写入该文件时,文件的内容将会被覆盖。
如何查看归档日志
Oracle的归档日志以及重做日志都是二进制文件,外部是无法打开的。Oracle提供了一个叫做LogMiner的工具,可以查看日志的内容。
LogMiner其实是Oracle自带的PLSQL包,大致过程如下:
- 首先把分析的日志加进去
- 启动logminer
- 在动态视图v$logmnr_contens中查询信息
-- 查询归档日志的路径
select * from v$archived_log;
-- 查询重做日志的路径
select * from v$logfile;
-- 通过LogMiner工具把日志中的数据提取出来
begin
sys.dbms_logmnr.add_logfile(LogFileName => 'D:\APP\XING.HL\ORADATA\ORCL\REDO03.LOG', Options => sys.dbms_logmnr.NEW );
end;
begin
sys.dbms_logmnr.start_logmnr(Options => sys.dbms_logmnr.DICT_FROM_ONLINE_CATALOG);
end;
-- 查询视图中的重做日志
select * from v$logmnr_contents;
Oracle Redo 以及 Archived日志简述的更多相关文章
- Oracle redo 日志损坏的几种情况下的恢复
Oracle redo 日志损坏的几种情况下的恢复 第一:损坏的redo为非正在使用的redo log 1.归档模式,不是当前正在日志损坏,数据库打开模式. 模拟损坏:SQL> select * ...
- oracle redo日志维护
环境 OS:Red Hat Linux As 5 DB:10.2.0.1 1.添加日志组 alter database add logfile group 4 ('/u01/app/oracle/or ...
- oracle redo 重做日志文件
以下易容翻译自oracle dba官方文档,不足之处还望指出. 管理重做日志文件 学习目标:1.解释重做日志文件的目的2.描述重做日志文件的结构3.学会控制日志切换与检查点4.多元化管理重做日志文件5 ...
- Oracle Redo log 状态及工作原理解析
Oracle重做日志(redo log)是用来记录操作条目,用于数据库数据恢复.为了提高效率,oracle通常建议设置三组redo log.本文将对重做日志组的状态以及多种状态之间切换做解析,力求掌握 ...
- Oracle redo/undo 原理理解
一. 什么是redo(用于重做数据) redo也就是重做日志文件(redo log file),Oracle维护着两类重做日志文件:在线(online)重做日志文件和归档(archived)重做日志文 ...
- Oracle redo与undo 第一弹
一. 什么是redo(用于前滚数据) redo也就是重做日志文件(redo log file),Oracle维护着两类重做日志文件:在线(online)重做日志文件和归档(archived)重做日 ...
- Oracle redo与undo浅析
http://liwenshui322.iteye.com/blog/1488949 一. 什么是redo(用于前滚数据) redo也就是重做日志文件(redo log file),Oracle维护着 ...
- 实验记录:Oracle redo logfile的resize过程
实验记录:Oracle redo logfile的resize过程. 实验环境:RHEL 6.4 + Oracle 11.2.0.3 单实例 文件系统 实验目的:本实验是修改redo logfile的 ...
- Oracle Redo
Redo log 重做日志在Oracle数据库中,有一种日志文件叫做重做日志文件,他就是大家俗称的:redolog.在redolog中又分为两种:在线重做日志与归档日志. ONLINE Redo lo ...
随机推荐
- 【jquery】flexiGrid新增功能的方式
到目前为止,我用过的jquery表格插件只有jqGrid和flexiGrid.今天,只说后者. 关于参数配置,使用方法,博客园文章很多. 原生的flexiGrid架包不大,内容可以扩展,比如在每行数据 ...
- Linux 查看进程、清理缓存、查看磁盘空间、查看宽带的命令
一.查看进程 查看所有的进程命令:ps 查看指定的进程命令:ps -ef|grep java (java 指的是服务名称) 结束进程命令:kill -9 9028 (9028指的是PID) 二.清理 ...
- access查询优化
一个zirancun 14万数据量,一个 zirancuntd 19万数据,这两个 zirancuntd.distid 与zirancun.id进行关联,查询 zirancuntd.distid不存 ...
- webpack入门指南(转载)
什么是 webpack? webpack是近期最火的一款模块加载器兼打包工具,它能把各种资源,例如JS(含JSX).coffee.样式(含less/sass).图片等都作为模块来使用和处理. 我们可以 ...
- member template
1.当且仅当类模板的参数相同时,你才能对类实体对象相互赋值,即将一个实体对象整体赋值给另外一个实体对象.不能将一种类型的实体对象赋值给另外一种实体对象.如: Stack<int> intS ...
- 关于mock server
这篇技术博客是在知乎上看到的 知乎js大神张云龙写的 这里贴过来记录下,如果侵权 请告知将及时删除. --------------------------- 为了更好的分工合作,让前端能在不依赖后端环 ...
- 【算法与数据结构】二叉搜索树的Java实现
为了更加深入了解二叉搜索树,博主自己用Java写了个二叉搜索树,有兴趣的同学可以一起探讨探讨. 首先,二叉搜索树是啥?它有什么用呢? 二叉搜索树, 也称二叉排序树,它的每个节点的数据结构为1个父节点指 ...
- Ubuntu下设置(增加/删除)开机启动项
As said above, you have to edit /etc/xdg/autostart/ and either: remove the NoDisplay=true lines; or ...
- KIWI Syslog配置
日志服务器Kiwi+Syslogd+8.3.7破解版 Window收集服务器日志evtsys_exe_32 默认地,kiwi使用UDP 514端口接收日志数据,安装成功后即可接收日志 使用命令nets ...
- Webdriver实现原理
通过研究selenium-webdriver的源码,笔者发现其实webdriver的实现原理并不高深莫测无法揣度.在这里以webdriver ruby binding的firefox-webdrive ...