彻底理解检查点的功能、作用、原理

检查点的实际应用

检查点做什么:

通知DBWn写脏块

数据文件头 select name ,CHECKPOINT_CHANGE# from v$datafile_header;

控制文件头 select name,CHECKPOINT_CHANGE# from v$datafile;

检查点号来源与SCN(System Change Number),
SCN是Oracle数据库中用来标识事务前后顺序的唯一序
列号。

SCN是当 Oracle数据更新后,由 DBMS自动维护去累积递增的一个数字。当

一个事务 commit时,LGWR会将 log buffer写入 redo log file,同时也会将该事

务的 SCN同步写入到 redo log file内(wait-until-completed)。因此当你 commit

transaction时,在成功的讯息返回之前,LGWR必须先完整的完成上述行为之

后,否则你是看不到提交成功的响应讯息。

可以理解的,返回的 SCN,也是目前 redo log file最新的 SCN 纪录。因为

commit后的交易才会有 SCN,而一旦 commit就会立刻写入 redo log file中。

检查点的作用

? Checkpoints are used to determine where recovery should start
? Checkpoint position - where recovery starts
? Checkpoint queue - link list of dirty blocks

系统时间标记与 scn之间存在一张表,即 SYS下的 SMON_SCN_TIME。

每隔 5分钟,系统产生一次系统时间标记与 scn的匹配并存入

SYS.SMON_SCN_TIME表(由 SMON进程来进行 Update操作),该表中记录了

最近 1440个系统时间标记与 scn的匹配记录,由于该表只维护了最近的 1440条

记录,即最近 5天内的记录。

查看 SCN和 timestamp之间的对应关系:

select scn,to_char(time_dp,'yyyy-mm-dd hh24:mi:ss') from sys.smon_scn_time order

by 2;

查询当前的检查点号

select dbms_flashback.get_system_change_number from dual;

select current_scn from v$datafile;

转换

select scn_to_timestamp(4082040) from dual;

select timestamp_to_scn(to_date('2011-01-25 12:10:00','yyyy-mm-dd hh24:mi:ss'))

from dual;

checkpoint有两个目的:

1、确保数据一致性。

2、使数据库能快速地恢复

检查点类型:

全局检查点:

关闭数据库

增量检查点:

定期执行、只写最老的块S:

阶段性的保存操作的结果,以至于以后实例异常中断而
不要从头开始恢复(recovery),缩短实例恢复的时间,
类似于Word程序中设置了自动保存功能。

部分检查点

和部分对象 如:TS 做检查点

部分检查点的作用
? 用来记录表空间何时开始备份,那么以后就从备份的点
(检查点)开始恢复(recovery),Oracle在做备份时
总是会发生一个检查点,用来记录开始备份的位置

部分检查点的影响
? Oracle会锁数据文件头,但是不会锁表空间,不影响
DML操作
? 把跟备份表空间相关的脏块写入数据文件
? 如果是UMAN(用户管理)备份方式,为了保证数据块
的一致性,会把被修改的数据块的镜像写入redolog,会
导致日志信息量增加

相关参数:

FAST_START_MTTR_TARGET 首选--建议

比如设定为60S,假定该值处于合理的情况之下,则一旦实例崩溃,在60S以内实例应当能够被恢复。合理即该值不能太大,也不能太小。太大则实例恢复所需的时间较长,太小则导致大量数据的及时写入,增加了系统的I/O。

FAST_START_MTTR_TARGET设置为0将关闭检查点自动调整功能。当设定一个大于0的值给FAST_START_MTTR_TARGET,则自动调整检查点功能将启用。

select target_mttr,estimated_mttr from v$instance_recovery;

select mttr_target_for_estimate,dirty_limit,estd_cache_writes,estd_cache_write_factor,estd_total_writes,estd_total_write_factor from v$mttr_target_advice;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/500314/viewspace-1069841/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/500314/viewspace-1069841/

CUUG ORACLE检查点讲解相关推荐

  1. 明晚8点直播丨经典知识库:深入解析Oracle检查点

    经典知识库:深入解析Oracle检查点-9月23日20:00 Oracle数据库数据块内容变更后采用"no-force-at-commit"策略,不会立即将脏数据块刷新到物理存储, ...

  2. oracle olap创建物化视图,CUUG oracle物化视图讲解

    1.视图是什么? 普通视图:只是存放在数据字典当中的子查询,本身没有来源于基表 Oracle的物化视图是包括一个查询结果的数据库对像,它是远程数据的的本地副本,或者用来生成基于数据表求和的汇总表.物化 ...

  3. Oracle 检查点队列和HASH Bucket

    作为磁盘数据块的缓存,Buffer Cache在Oracle的所有内存池中是最大的. 假设进程要访问5号数据文件中的第1234号块,Oracle如何知道这个块是否在Buffer Cache中?如果在, ...

  4. oracle检查点相关(一)

    oracle查看当前的检查点 SQL> select CURRENT_SCN from v$database; CURRENT_SCN ----------- 2160376 SQL> s ...

  5. oracle的视图如何使用,Oracle 视图讲解及使用实例

    Oracle之视图 2018.9.12 由于视图的数据与表数据互相关联,所以切记谨慎操作 建立视图 使用下面sql语句来完成视图的创建 create or replace view 视图名 as se ...

  6. oracle 课程目录,cuug oracle DBA课程目录及简介

    代码 课程名称 先修课程 天數 Oracle 功夫DBA项目实战班 Oracle Database 9i/10g TO-01 SUN Solaris系统与网络管理 计算机基础 10 Oracle 数据 ...

  7. oracle锁模式详解,oracle 锁讲解之一

    锁这玩意其实就是资源不够用的,需要排队来获取资源,就像过去大杂院里只有一个公共厕所,一大早很多少排队一样,等.操作系统有锁,数据库也有锁,这里锁的道理是一样的. 数据库是一个多用户使用的共享资源.当多 ...

  8. oracle 数据库讲解,oracle数据库基本讲解(菜鸟篇)

    –创建用户 – Create user 创建一个用户 – Identified by 密码 – Default tablespace users 默认表空间 –Temporary tablespace ...

  9. 8月Oracle与CUUG再度联手呈现免费hadoop技术沙龙

    在酷夏的最后一天,CUUG为你再添一把火,携手Oracle举办国内首次Hadoop的技术沙龙,机会难得,火速报名. 本次Oracle技术沙龙将讲授:Hadoop的历史.Hadoop的框架结构.Hado ...

最新文章

  1. Redis启动多端口,运行多实例(转)
  2. Pycharm安装pip pip安装第三方模块
  3. OpenCV转换PyTorch分类模型并使用OpenCV C ++启动
  4. Struts2初始化过程代码分析
  5. 第2篇:Flowable快速工作流脚手架Jsite_配置项目
  6. Leetcode PHP题解--D56 637. Average of Levels in Binary Tree
  7. android动画能超过父容器吗,Android中你不得不知道的动画知识 (一)
  8. 苹果ios15.4RC版发布:新增口罩面容解锁功能
  9. 使用Sublime Text 2 编辑Markdown
  10. 关于解决vensim9.2版本无法显示中文的办法
  11. sql server2008密钥
  12. 常见计算机英语词汇翻译,常见计算机英语词汇翻译.doc
  13. 谈谈 MVX 中的 Model
  14. [希腊神话--英语]另类重看英语词汇---序言
  15. Python+Vue计算机毕业设计教学辅助系统vmpc7(源码+程序+LW+部署)
  16. 抗渗等级p6是什么意思_混凝土防水等级S6,P6分别是什么意思
  17. html中repeat的作用,repeat-y
  18. localhost和127.0.0.1有什么区别?
  19. 【Vue】Vue中的data数据包含html标签元素的解决方法
  20. 大学英语计算机不过只能拿结业证吗,在大学期间建议去考的证书

热门文章

  1. SHELL 时间格式转换
  2. leet_241_different_way_add_parenthese(给表达式加括号并求值)
  3. 微信小程序与H5的区别?
  4. CSS3实现晃动的引导箭头-百度新首页
  5. 用好评返现/评价有礼,节约店铺百万营销费用 附:不违规的返现机制应该如何操作...
  6. 【网络】路由器和无线路由器就这么配置
  7. ModStartCMS v2.6.0 用着真得劲,头发也浓密了
  8. 计算机老师任课教师寄语,一年级一句话任课老师寄语
  9. 如何通过ISO安装win7程序
  10. 内网穿透--DevOps学习番外