本篇文章朋友在北京游玩的时候突然想到的...这几周就有想写几篇关于检查点重做的文章,所以回家到之后就奋笔疾书的写出来发布了

1、Oracle日记理原

REDO流(重做日记流)

RBA (重做节字址地由4部份构成:日记程线号、日记序列号、日记文件块编号和日记文件节字偏移量,长度为10个节字.例如Thread:1 RBA:0x000014.00000003.0010)

ckpt equeue :1.每3秒会发触查检脏块,2.每3秒查检ckpt equeue头的RBA,把查检队列头RBA写到控制文件)

用作:(1).统计脏据数块

(2).RBA按次序序排,刷据数到磁盘就按这次序

(3).个每RBA除指向下一个RBA,还指向脏据数块址地

2、查检点队列(查检点只是一个据数库件事,它存在的本根义意在于少减崩溃恢复间时),在BH中有一个ckptq项,双向链表.

(1)只有脏块才会在查检点队列中,非脏块的ckptq为空。

(2)当块初次被改更时,块会立即被加进查检点队列。 如果查检点队列中的脏块再次被修改,其实不会转变其在

查检点队列中的位置。

(3)查检点队列中脏块的排列次序:根据第2点,全部脏块按照初次被改更的间时的次序排列。 更精确点说:按

照块的lrba排列。

3、什么是RBA?LRBA?HRBA?ON DISK RBA?

(1)RBA:就是重做块址地

(2)LRBA:第一次对此据数块修改对应的Redo Block Address的次序排列

(3)HRBA:于对相LRBA,前面修改的RBA

(4)on disk rba:磁盘中重做日记文件的最后一条重做录记的rba,是最高的重做值。

4、与参查检点的进程重要括包lgwr、dbwn和ckpt,分为两大类:全完查检点和增量查检点

(1)全完查检点重要括包以下骤步:

①首先,在日记缓冲中定确以后的(也就是最新的)重做录记,提取其RBA与SCN作为查检点目标

②LGWR空清日记缓存,将重作录记写入线在日记

③DBWn进程将查检点目标(RBA与SCN)产生的及查检点目标之前产生的脏据数块,按RBA的次序写入据数文件

④最后,CKPT进程将查检点目标(RBA与SCN)写入据数文件的头部和控制文件

(2)发触全完查检点的条件:

①行执shutdown immediate命令

②行执alter system checkpoint命令

③LGWR换切线在日记,不论是因为日记写满还是行执alter system switch logfile命令

④行执部份表空间护维命令:alter tablespace ...offline|online|begin backup|end backup|read only|read write

5、增量查检点其实不会去更新据数文件头,而只是每3秒由CKPT进程去更新控制文件中的LRBA和SCN

(1)增量查检点重要包括以下骤步

①CKPT每3秒一次录记查检点位置的作工(更新控制文件)

②CKPT期定发触DBWR

(2)增量查检点的义意有以下两个:

①少减产生全完查检点时DBWn进程的作工累赘

②进步例实恢复的速度

6、CHECKPOINT 优化

(1)从9I开始CHECKPOINT的优化大大简化了

设置FAST_START_MTTR_TARGET

较大的值:恢复间时较长

较小的值:加增IO负载

(2)10g 的CHECKPOINT的主动优化

fast_start_mttr_target设置为非零的值或者不设置

*********************************************************************************************************

show parameter mttr

alter system checkpoint;

alter system switch logfile;

select file#,checkpoint_change#,to_char(checkpoint_time,'yyyy-mm-dd hh24:mi:ss') cpt from v$datafile;

select file#,checkpoint_change#,to_char(checkpoint_time,'yyyy-mm-dd hh24:mi:ss') cpt from v$datafile_header;

select dbid,checkpoint_change# from v$database;

select group#,sequence#,status,first_change#,next_change# from v$log;

alter session set events 'immediate trace name controlf level 8';//CKPT每3秒写进控制文件的信息

每日一道理
如果只看到太阳的黑点,那你的生活将缺少温暖;如果你只看到月亮的阴影,那么你的生命历程将难以找到光明;如果你总是发现朋友的缺点,你么你的人生旅程将难以找到知音;同样,如果你总希望自己完美无缺,假设你的这一愿望真的能如愿以偿,那么你最大的缺点就是没有缺点。

grep "low cache rba" test_ora_22708.trc

/ *low cache rba:(0x51.bef8.0)[查检点位置] on disk rba:(0x51.bf36.0)[最后一条重做录记的rba] */

alter session set events 'immediate trace name buffers level 2'; //BH(脏块)上有CHPTQ和FILEQ,非脏块为NULL

grep ckptq test_ora_22468.trc |grep -v NULL

grep ckptq test_ora_22468.trc

/* ckptq: [0x60be41a8,0x60bf9d98] fileq: [0x60be41b8,0x60bf9da8]

ckptq: [NULL] fileq: [NULL] */

alter session set events 'immediate trace name file_hdrs level 10';//件控文件与据数文件头

/* DATA FILE #5 控制文件

V10 STYLE FILE HEADER: 据数文件头

status:0x4 root dba:0x00000000 chkpt cnt: 106 ctl cnt:105*/

**********本客博全部内容均为原创,若有转载请注明作者和出处!!!**********
Name:    guoyJoe

QQ:      252803295

Email:    oracledba_cn@hotmail.com

Blog:      http://blog.csdn.net/guoyJoe

ITPUB:   http://www.itpub.net/space-uid-28460966.html

OCM:    http://education.oracle.com/education/otn/YGuo.HTM
_____________________________________________________________
加群验证问题:哪些SGA结构是需必的,哪些是可选的?否则拒绝请求!!!

案答在:http://blog.csdn.net/guoyjoe/article/details/8624392

DSI&Core Search(QQ群):127149411

文章结束给大家分享下程序员的一些笑话语录: 看到有人回帖“不顶不是中国人”,他的本意是想让帖子沉了。

检查点重做检查点队列简单总结Strut2教程-java教程相关推荐

  1. java 导出excel教程,[Java教程]导出大量数据到Excel的一种方式

    [Java教程]导出大量数据到Excel的一种方式 0 2012-07-09 17:00:11 在Java Web开发中,经常需要导出大量的数据到Excel,使用POI.JXL直接生成Excel,很容 ...

  2. 字符扫描剑指Offer读书笔记之第二章2字符替换Strut2教程-java教程

    每日一贴,今天的内容关键字为字符扫描 给定一个字符串str和一个子串SubStr,如果str面里的空间充足,写一个函数将str面里的字符ch替换成SubStr.书中只是一个特例:将格空替换成%20. ...

  3. 文件系统读写Linux文件系统损坏的修复技术Strut2教程-java教程

    改章节是一篇关于文件系统读写的帖子 有时候护维Linux服务器时会临面这样一种错误,即表现件文统系成变(Read Only System),即件文统系成变读只的方法,生产这一问题的原因可能有两种,一种 ...

  4. 文件绑定java socket多线程网络传输多个文件Strut2教程-java教程

    题记:写这篇博客要主是加深自己对文件绑定的认识和总结实现算法时的一些验经和训教,如果有错误请指出,万分感谢. 由于要需究研了下用java socket传输文件,由于要需传输多个文件,因此,采用了多线程 ...

  5. Java™ 教程(目录)

    Java™ 教程 Java教程是为JDK 8编写的,本页面中描述的示例和实践没有利用在后续版本中引入的改进. Java教程是希望使用Java编程语言创建应用程序的程序员的实用指南,其中包括数百个完整的 ...

  6. BeginnersBook Java 教程

    来源:ApacheCN BeginnerBook 翻译项目 译者:飞龙 协议:CC BY-NC-SA 4.0 贡献指南 本项目需要校对,欢迎大家提交 Pull Request. 请您勇敢地去翻译和改进 ...

  7. thinkphp5 redis消息队列简单教程

    thinkphp5 redis消息队列简单教程 1.1 安装 thinkphp-queue composer install thinkphp-queue 1.2 搭建消息队列的存储环境 使用 Red ...

  8. mysql 检查点_my05_mysql检查点简述

    简单描述一下mysql 检查点,对mysql数据库恢复的理解有所帮助. 数据库版本 mysql> selectversion();+-----------+ | version() | +--- ...

  9. PS入门教程:简单实用的PS快捷键教程2

    上篇内容从工具箱.文件操作.图层混合.选择功能.视图操作五方面入手分类总结了常用的PS快捷键教程.这篇内容小编再将从编辑操作.图像调整.加点按.取消操作这五方面为大家加码日常都可用到的PS快捷键教程. ...

最新文章

  1. jQuery 学习笔记之九 (jQuery 图片提示 )
  2. oepnstack笔记
  3. wxWidgets 电源管理示例
  4. Parity Game CodeForces - 298C
  5. JAVA数据库连接池实现
  6. python识别简单训练模型_使用已经得到的keras模型识别自己手写的数字方式
  7. 详解异构计算FPGA基础知识
  8. 华为P20云文档空间满了怎么清理_原来华为手机能这样清理垃圾,怪不得别人的手机再用两年不卡顿...
  9. 细说 AppCompat 主题引发的坑:You need to use a Theme.AppCompat theme with this activity!
  10. pid温度控制c语言程序,51单片机PID温度控制程序
  11. windows批量ping测试脚本
  12. 在Word中如何设置分级标题?
  13. Linux课程设计每日小结
  14. 专业能力和表达能力,你觉得哪个更重要?
  15. 赛尔号星球大战服务器维修,赛尔号星球大战11月29日更新公告
  16. VMware虚拟机复制文件卡死的解决
  17. 从PaaS到GaaS,蔚领时代的“云”上愿景
  18. Gibbs Sampling\吉布斯采样(一)
  19. 在ORACLE中用DBCA创建数据库
  20. linux 命令 ls

热门文章

  1. java 之 运算符
  2. cisco 访问控制列表ACL笔记
  3. 阿里年会的马老师说:认真生活、快乐工作、保持理想
  4. 上班第一天(5)--一个程序员的成长史(14)
  5. 动态验证码制作(RandomCodeImage )
  6. Windows 编程[3] - 学习窗体生成的过程三
  7. 最新批量***dedecms|dedecms最新0day
  8. 读《程序员的思维修炼》有感
  9. Canvas VS . SVG
  10. GridView总结二:GridView自带编辑删除更新