精华内容
下载资源
问答
  • ckpt

    2015-05-18 11:51:08
    1.CKPT一定是是在checkpoint发生的时候将数据库当前的SCN更新入数据库文件头和控制文件当中,同时DBWn进程将buffer cache中的脏数据块(dirty block)写到数据文件当中(这个脏数据也一定是当...

    1.CKPT一定是是在checkpoint发生的时候将数据库当前的SCN更新入数据库文件头和控制文件当中,同时DBWn进程将buffer cache中的脏数据块(dirty block)写到数据文件当中(这个脏数据也一定是当前online redo log保护的那一部分)。

    2.同时CKPT进程还会在控制文件当中记录(redo block address)RBA,这个地址用来标志恢复的时候需要从日志中的那个位置开始。
    在Oracle数据库中和checkpoint相关的SCN总共有4个
    1.System checkpoint SCN  (存在于控制文件)
    在系统执行checkpoint后,Oracle会更新当前控制文件中的System checkpoint SCN。
    我们可以通过以下视图来查看
    select checkpoint_change# from v$database:

    2.Datafile checkpoint SCN (存在于控制文件)
    由于控制文件中记录了Oracle中各个数据库文件的位置和信息,其中当然也包括了Datafile checkpoint SCN,因此在执行checkpoint的时候,Oracle还会去更新控制文件中所记录的各个数据文件的datafile checkpoint SCN.
    我们可以通过以下视图来查看
    select checkpoint_change#  from v$datafile;
    SYS@rhel6> select checkpoint_change# from v$datafile;

    CHECKPOINT_CHANGE#
    ------------------
            1520086
            1520086
            1520086
            1520086


    3.Start SCN (存在于各个数据文件头)
    在执行checkpoint时,Oracle会更新存放在各个实际的数据文件头的Start SCN (除开控制文件),这个SCN存在的目的是用于检查数据库启动过程中是否需要做media recovery(介质恢复)
    我们可以通过以下视图来查看
    select checkpoint_change# from v$datafile_header;
    SYS@rhel6> select checkpoint_change# from v$datafile_header;

    CHECKPOINT_CHANGE#
    ------------------
            1520086
            1520086
            1520086
            1520086


    4.End SCN(存在于控制文件)
    最后一类SCN,End SCN他也是记录在控制文件当中,每一个所记录的数据文件头都有一个对应的End SCN,这个End SCN一定是存在于控制文件当中。这个SCN主要是用来去和控制文件的scn比较,判断数据库启动的时候是否需要做instance recovery。
    我们可以通过以下视图来查看
    select name,last_change# from v$datafile
    那么其实在数据库正常运行的情况下,对于read/write的online 数据文件这个SCN号为#FFFFFF(NULL).

    oracle的启动与oracle的SCN
    1.在数据库的启动过程中,当System Checkpoint SCN=Datafile Checkpoint SCN=Start SCN的时候,Oracle数据库是可以正常启动的,而不需要做任何的media recovery。而如果三者当中有一个不同的话,则需要做media recovery

    2.那什么时候需要做instance recovery呢?
       其实在正常open数据库的时候,oracle会将记录在控制文件中的每一个数据文件头的End SCN都设置为#FFFFFF(NULL),那么如果数据库进行了正常关闭比如(shutdown or shutdown immediate)这个时候,系统会执行一个检查点,这个检查点会将控制文件中记录的各个数据文件头的End SCN更新为当前online数据文件的各个数据文件头的Start SCN,也就是End SCN=Start SCN,如果再次启动数据库的时候发现二者相等,则直接打开数据库,并再次将End SCN设置为#FFFFFF(NULL).
       那么如果数据库是异常关闭,那么checkpoint就不会执行,因此再次打开数据库的时候End SCN != Start SCN这个时候就需要做实例恢复。
    这个更新SCN操作的执行着就是CKPT进程,他不仅仅会更新SCN,而且还会通知DBWn执行操作(write datafile , archive log file 等)。
    1.对于只读表空间(readonly tablespace) ,其数据文件的Datafile Checkpoint SCN、Start SCN和END SCN号均相同。这三个SCN在表空间处于只读期间都将被冻结。

    2.如果控制文件不是当前的控制文件(其实就是说,想比当前redo log的SCN来讲,控制文件已经过时了),则System checkpoint SCN会小于Start SCN(Start SCN是来自实际的数据文件头,有比较依据)。记录这些SCN号,可以区分控制文件是否是当前的控制文件。当有一个Start SCN(从当前各个在线数据文件中获得)号超过了System Checkpoit SCN号时,则说明控制文件不是当前的控制文件,因此在做recovery时需要采用using backup controlfile。这是为什么需要记录SystemCheckpoint SCN的原因之一。

    控制文件已经过时,我们需要重建控制文件,重建方式分两种(resetlogs 和 noresetlogs)

    1.使用resetlogs选项时,System Checkpoint SCN为被归为0,而其中记录的各个数据文件的Datafile Checkpoint SCN则来自于Start SCN(也就是说可能会从冷备份的数据文件的数据文件头中获取)。根据上述的描述,此时需要采用using backup controlfile做recovery. 因此情况是 System Checkpoint SCN=0 < Start SCN = Datafile Checkpoint SCN

    2.使用noresetlogs选项时,有一个前提就是:一定要有online redo log的存在。否则就要使用resetlogs选项。这个时候控制文件重建好时,其system checkpoint SCN=Datafile Checkpoint SCN=Lastest Checkpoint SCN in online redo log,我们可以看到Datafile Checkpoint SCN并没有从Start SCN中读取。而是读取了最新的日志文件中的SCN作为自己的数据。此时重建的控制文件在恢复中的作用跟最新的控制文件类似,System Checkpoint SCN(已经读取最新的redo log的checkpoint SCN信息)可能会>Start SCN (因为数据文件可能会从冷备份中恢复),恢复时就不需要加using backup controlfile子句了   


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

    转载于:http://blog.itpub.net/30166976/viewspace-1660145/

    展开全文
  • CKPT

    2012-09-27 09:26:09
  • SMON 是系统监视器(System Monitor)的缩写。如果Oracle实例失败,则在SGA中的任何...当实例失败之后,如果重新打开该数据库,则背景进程SMON自动执行实例的复原操作。 DBWR 是数据库书写器(Database Write)的缩写....

     

    SMON 是系统监视器(System Monitor)的缩写。如果Oracle实例失败,则在SGA中的任何没有写到磁盘中的数据都会丢失。有许多情况可能引起Oracle实例失败,例如,操作系统的崩溃就会引起Oracle实例的失败。当实例失败之后,如果重新打开该数据库,则背景进程SMON自动执行实例的复原操作。

    DBWR 是数据库书写器(Database Write)的缩写.该服务器进程在缓冲存储区中记录所有的变化和数据,DBWR把来自数据库的缓冲存储区中的脏数据写到数据文件中,以便确保数据库缓冲存储区中有足够的空闲的缓冲存储区。脏数据就是正在使用但是没有写到数据文件中的数据。

    LGWR 是日志书写器(Log Write)的缩写。LGWR负责把重做日志缓冲存储区中的数据写入到重做日志文件中。

    CKPT 进程是检查点(Checkpoint)的缩写。该进程可以用来同步化数据库的文件,它可以把日志中的文件写入到数据库中。

    PMON 是进程监视器(Process Monitor)的缩写。当取消当前的事务,或释放进程占用的锁以及释放其它资源之后,PMON进程清空那些失败的进程。

    转载于:https://www.cnblogs.com/caodneg7/p/11411709.html

    展开全文
  • 当实例失败之后,如果重新打开该数据库,则背景进程SMON自动执行实例的复原操作。 <br />DBWR 是数据库书写器(Database Write)的缩写.该服务器进程在缓冲存储区中记录所有的变化和数据,DBWR把来自数据库的...

    SMON 是系统监视器(System Monitor)的缩写。如果Oracle实例失败,则在SGA中的任何没有写到磁盘中的数据都会丢失。有许多情况可能引起Oracle实例失败,例如, 操作系统的崩溃就会引起Oracle实例的失败。当实例失败之后,如果重新打开该数据库,则背景进程SMON自动执行实例的复原操作。

    DBWR 是数据库书写器(Database Write)的缩写.该服务器进程在缓冲存储区中记录所有的变化和数据,DBWR把来自数据库的缓冲存储区中的脏数据写到数据文件中,以便确保数据库缓冲 存储区中有足够的空闲的缓冲存储区。脏数据就是正在使用但是没有写到数据文件中的数据。

    LGWR 是日志书写器(Log Write)的缩写。LGWR负责把重做日志缓冲存储区中的数据写入到重做日志文件中。

    CKPT 进程是检查点(Checkpoint)的缩写。该进程可以用来同步化数据库的文件,它可以把日志中的文件写入到数据库中。

    PMON 是进程监视器(Process Monitor)的缩写。当取消当前的事务,或释放进程占用的锁以及释放其它资源之后,PMON进程清空那些失败的进程。

    展开全文
  • CKPT,SCN

    2017-11-08 17:35:00
    CKPT进程:完全检查点 ckpt进程的作用,触发全局检查点,通过DBWR将buffer_cache中的所有脏块写入数据文件中;由于DBWR的机制,因此lgwr会先写,然后dbwr后写。 当完全检查点被触发时...如果数据库突然掉电了,内...
  • CKPT工作机制

    2012-12-05 11:33:10
    CKPT 用来减少数据库恢复过程中所花的时间。 Ckpt更新数据文件头 和控制文件。通知dbwr进程产生一个检查点,dbwr进程将buffer cache中的脏数据写入到数据文件中。 ...
  • CKPT & SCN

    2007-06-12 14:26:40
    Checkpoint是一个数据库事件,用来同步所有的datafile,controlfile和redo logfile。当发出ckpt时(回顾什么时候oracle会发出ckpt呢),ckpt会将检查点时...
  • CKPT的工作机制

    千次阅读 2013-09-07 17:02:17
    减少数据库实例恢复的时间;让内存中的脏数据及时的写到磁盘上;在安全关闭数据库时,保证所有提交的数据被写到磁盘上。 ckpt进程本身只完成两件工作: 1,执行检查点和更新控制文件和数据文件 2,将脏缓存块写入...
  • oracle--CKPT

    2019-09-27 07:22:49
    一,CKPT功能 1) 调度数据写; 2) 会将已经完成的检查点写到数据文件头; 3) 把已经完成的检查点写到控制文件; 1. other:其他进程; 2. 注意:磁盘、内存支持并行I/O,磁带不支持; 3. 服务进程不...
  • CKPT INP诡异现象

    2020-05-21 09:47:22
    有人说,数据库CHUNK状态如下,但是没有发现CKHUNK出现PD的现象。 这个就比较诡异了。 后来才知道答案是: 1、数据库的某个DBS出现了ND 的现象; 2、甲方用了onbar -r blbs恢复了单个dbs; 真是一个神奇的...
  • 数据库进程

    2018-11-01 09:29:40
    (1)数据写进程(dbwr):负责将更改的数据从数据库缓冲区高速缓存写入数据文件。 (2)监控进程(pmon):负责在一个Oracle进程失败时清理...(5)检查点进程(ckpt):负责在每当缓冲区高速缓存中的更改永久地...
  • Oracle数据库

    2013-03-15 11:06:36
    Oracle server由例程和数据库两部分组成,例程是一组内存结构和后台进程的集合,内存结构包括数据...后台进程包括SMON,PMON,DBWR,CKPT,LGWR.ARCH等。数据库是一组OS文件的集合,由数据文件、控制文件和重做日志组成。
  • 数据库中有个CKPT进程,这个是个可选进程,但是真正执行检查点的任务并不是有ckpt来完成的,而是ckpt在更新控制文件和数据文件头的有关信息后,通知DBWn进程,产生一个检查点,在产生检查点的时候,DBWn进程会将...
  • DBWn,CKPT,LGWR进程

    2015-09-15 22:43:31
    4.DBWn,CKPT,LGWR进程 首先,简要介绍一下: DBWn:数据库块写入器(Database Block Writer)负责将脏块写入磁盘的后台进程。 CKPT:检查点进程(Checkpoint Process)只是更新数据文件的文件首部,以辅助建立检查点...
  • SCN和CKPT

    2009-06-06 14:54:21
    The System Change Number system change number (SCN)是一个非常重要的标记,Oracle使用它来标记数据库在过去时间内的状态和轨迹。 Oracle使用SCN来保存所有变化的轨迹。SCN是一个逻辑时钟来记录数据库事件。它...
  • CKPT检查点队列

    2015-04-04 17:14:53
    检查点是一个数据库事件,它把修改的数据从高速缓存写入磁盘,并更新控制文件和数据文件。 检查点分为三类: 1)局部检查点:单个实例执行数据库所有数据文件的一个检查点操作,属于此实例的全部脏缓存区写入...
  • 一个数据库是这样的情况,当时日志满了,其他人看到不能用直接重启服务器了,现在服务器启动后一直是CKPT REQ状态, 提示日志需要备份,我onbar备份不了。 修改cfg文件,把/dev/nst0 改为/dev/null 用...
  • 深入了解SCN和CKPT

    2011-03-13 22:28:26
    深入了解SCN和CKPT SCN是顺序递增的一个数字,在Oracle 中用来标识数据库的每一次改动,及其先后顺序。SCN的最大值是0xffff.ffffffff。 2.10.2. SCN的管理方式 Oracl...
  • ckpt 的 理解

    2007-12-19 17:07:09
    何时触发检查点 检查点作写什么: [@more@]切换日志会触发checkpoint什么是checkpoint?checkpoint是一个数据库事件,它将已修改的数据从高速缓存刷新到磁盘,并更新控制文件和数据文件。什么时候发生...
  • Oracle数据库笔记

    2018-01-11 17:41:18
    Oracle数据库笔记 数据库和实例的区别: 数据库是物理操作系统文件或者磁盘的集合。 ...实例是一系列Oracle...后台进程:PMON(进程监控程序)、SMON(系统监控程序)、CKPT(检查点)、DBWR(数据读写)、LGWR
  • ckpt的工作机制

    万次阅读 2011-09-21 17:18:41
    检查点是一个数据库事件,它把修改数据从高速缓存写入磁盘,并更新控制文件和数据文件。 检查点分为三类: 1)局部检查点:单个实例执行数据库所有数据文件的一个检查点操作,属于此实例的全部脏缓存区写入数据...
  • 一、CKPT简介 检查点是一个数据库事件,它把修改数据从高速缓存写入磁盘,并更新控制文件和数据文件。检查点分为三类:1)局部检查点:单个实例执行数据库所有数据文件的一个检查点操作,属于此实例的全部脏缓存区...
  • ckpt(checkpoint)机制研究

    2012-12-02 00:02:49
    ckpt的作用:1、保证数据库的一致性: 脏数据写出到数据文件,保证内存和数据文件中的数据是一样的。2、缩短实例恢复的时间: 实例恢复需要把实例异常关闭前没有写出到数据文件中的脏数据通过日志进行恢复。如果需写...
  • CKPT,SMON,PMON,RECO,Dnnn

    2016-02-28 21:43:46
    ckpt进程的作用就是执行一个检查点,同步数据库的所有数据文件,控制文件和重做日志文件。 当执行检查点时,系统促使dbwn将data buffer cache的数据的变化写入到数据文件,同时完成对数据文件和控制文件的 更新,...

空空如也

空空如也

1 2 3 4 5 ... 15
收藏数 300
精华内容 120
关键字:

数据库ckpt