1、关于checkpoint的概述

checkpoint是oracle在数据库一致性关闭、实例恢复和oracle基本操作中不可缺少的机制,包含以下相关的含义:

A、检查点的位置(checkpoint position)为一种数据结构,在redo流中记录的SCN号是在进行数据库实例恢复起始位置。

检查点的位置由在数据缓冲池中存在的最老的脏数据位置决定,检查点的位置相当于一个指向redo流的指针,并且检查点的信息存储在控制文件和数据文件的头中。

B、将数据缓冲区中修改后的脏数据写入到磁盘中。

2、checkpoint的目的

A、当实例恢复或者介质恢复时,减少恢复所需要的时间

B、确保在数据缓冲区中的脏数据已经写入到磁盘当中

C、确保在进行数据库一致性关闭的时候所有提交的数据都写入到磁盘当中

3、什么时候数据库启动checkpoint

CKPT进程负责将checkpoint的信息写入到数据文件头中和控制文件中,包括以下几种类型的检查点

A、thread checkpoint(线程检查点或者数据库检查点)

数据库将所有在数据缓冲区内由redo修改过的数据写入到磁盘中在某些动作之前,这个线程检查点在所有的实例中的集合称之为数据库检查点(database checkpoint),线程检查点发生在下列情况下:

——数据库一致性关闭的时候

——ALTER SYSTEM CHECKPOINT语句的时候

——在线日志切换的时候

——ALTER DATABASE BEGIN BACKUP语句的时候

B、tablespace and data file checkpoint(表和数据文件检查点)

数据库将所有在数据缓冲区内由redo修改过的数据写入到磁盘中在具体动作之前,表空间的检查点是数据文件检查点的集合,每个数据文件都在这个表空间之内,此种检查点发生在以下情况:

——将一个表空间设置为只读的方式

——将一个表空间设置为offline

——数据文件大小变化的时候

——执行ALTER TABLESPACE BEGIN BACKUP的时候

C、incremental checkpoint(增量检查点)

增量检查点是线程检查点的一种,是为了避免在线日志切换的时候需要写入大量的脏数据到磁盘中,DBWn每三秒检查一次看是否有数据是否要写入到磁盘当中,当DBWn进程需要将脏数据写入到磁盘中时,从而推进检查点的位置,导致CKPT进程将检查点位置信息写入到控制文件中,但是不会写入到数据头文件中。

D、其他的检查点包括实例和介质恢复检查点、检查点当schema对象被dropped和truncated的时候

4、相关进程CKPT

CKPT进程的全称为checkpoint process,负责:

A、更新控制文件和数据头文件中的检查点信息

B、通知DBWn进程将脏数据写入磁盘中

检查点信息包括:

A、检查点位置

B、SCN

C、在线日志文件中开始恢复的位置

CKPT进程不负责将脏数据写入到磁盘中,不负责将redo缓冲区的数据写入到在线日志文件中

DBWn进程负责将脏数据存盘,LGWR进程负责将redo缓冲区中的书籍存盘

oracle检查点checkpoint信息的更多相关文章

  1. oracle检查点队列与增量检查点【转载】

    oracle检查点队列与增量检查点 今天是2013-09-04,这几天一直心里安顿不下来,今天还好了,可以自己安静的学习一下oracle,在此记录一下学习笔记.这篇文章我不知道在那转载的,一直都留在我 ...

  2. oracle学习----统计信息

    1.收集统计信息的方式 for all columns size skewonly BEGIN  DBMS_STATS.GATHER_TABLE_STATS(ownname          => ...

  3. 验证Oracle收集统计信息参数granularity数据分析的力度

    最近在学习Oracle的统计信息这一块,收集统计信息的方法如下: DBMS_STATS.GATHER_TABLE_STATS ( ownname VARCHAR2, ---所有者名字 tabname ...

  4. ORACLE收集统计信息

    1.     理解什么是统计信息 优化器统计信息就是一个更加详细描述数据库和数据库对象的集合,这些统计信息被用于查询优化器,让其为每条SQL语句选择最佳的执行计划.优化器统计信息包括: ·       ...

  5. Oracle Statistic 统计信息 小结

    oraclestatisticstabledatabasesqldictionary   目录(?)[-] 直方图上列的信息说明 直方图类型说明   一.  Statistic 说明 Oracle 官 ...

  6. ORACLE 收集统计信息

    1.     理解什么是统计信息优化器统计信息就是一个更加详细描述数据库和数据库对象的集合,这些统计信息被用于查询优化器,让其为每条SQL语句选择最佳的执行计划.优化器统计信息包括: ·        ...

  7. oracle检查点队列(checkpoint queue)

    buffer cache CBC链 按地址链 LRU  干净buffer LRUW  脏buffer  按照冷热 checkpoint queue:链buffer,①链脏块②按buffer第一次脏的时 ...

  8. 134、TensorFlow检查点checkpoint文件中的信息

    # 1.你想创建多少Saver对象就可以创建多少,如果你需要去保存和恢复不同的子图模型 # 同样的变量可以在不同的saver对象中被加载 # 只有在Saver.restore()方法被调用的时候才会对 ...

  9. SQL SERVER的检查点checkpoint

    1 什么是检查点 数据修改操作 都是在 内存中的数据页进行修改,每次修改后并没有立即把这些页面写入磁盘,而是等到一定时期,数据库引擎对数据库发起 检查点命令,这时,该命令就会创建一个已知的正常点,把当 ...

随机推荐

  1. pymongo 例子

    import pymongo class dbUtil(object): def __init__(self, tablename='functional_testing'): con = pymon ...

  2. spring autoWire注解

    1.autowire注解,可以用来获得applicationContext,ResourceLoader,BeanFactory的注入 autoWire会获得相应资源 2.autoWire注解还可以用 ...

  3. 汇编debug 截图

  4. 一个java的DES加解密类转换成C#

    原文:一个java的DES加解密类转换成C# 一个java的des加密解密代码如下: //package com.visionsky.util; import java.security.*; //i ...

  5. linux查看硬件环境

    一:查看cpu more /proc/cpuinfo | grep "model name" grep "model name" /proc/cpuinfo 如 ...

  6. PHP命名空间概念解析

    1. PHP中的命名空间是什么? 什么是命名空间?“从广义上来说,命名空间是一种封装事物的方法.在很多地方都可以见到这种抽象概念.例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮 ...

  7. ios中addtarget

    Target-action:目标-动作模式,它贯穿于iOS开发始终.但是对于初学者来说,还是被这种模式搞得一头雾水. 其实Target-action模式很简单,就是当某个事件发生时,调用那个对象中的那 ...

  8. Oracle 数据集成的实际解决方案

    就针对市场与企业的发展的需求,Oracle公司提供了一个相对统一的关于企业级的实时数据解决方案,即Oracle数据集成的解决方案.以下的文章主要是对其解决方案的具体描述,望你会有所收获. Oracle ...

  9. linux的chmod与chown命令详解

    使用方式 : chmod [-cfvR] [--help] [--version] mode file... 说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者.群组.其他.利用  ...

  10. svn url does not contain valid patch

    想把项目上传到svn上,由于误点击了apply patch.所以出现下面的错误. 正确做法是在项目上右击找到Team----share Project 如图: 点击share project后出现如图 ...