有一家叫甲骨文的粮店,老板很严谨,为了防止仓库的粮食在买入卖出的时候发生问题,他制订一套流程,首先进出仓库的每一旦粮食都要求有一个编号(SCN),而且出入库之前必须先放到一个平台上(buffer cache),他命令仓库叫大头的伙计(datafile head)来首先记录这个编号,然后每隔一定的时间(log_checkpoint_timeout)或者库房平台上的粮食堆放到一定的数量或者仓库伙计换班(log swtich)的时候,一个叫“点点”(CKPT)的后院家奴就会把仓库伙计记录的信息拿给帐房先生同时还会催促码放在仓库平台的粮食入仓或者出仓(DBWn),帐房先生根据“点点”拿来的帐页记录到自己的帐本上。这样一来每天老板要和账房先生、仓库伙计进行账务的核对,一旦发现仓库伙计记录了而帐房先生没记录的情况就要求帐房先生把伙计记录的信息誊写到自己的帐本上,而如果发现帐房先生有记录了而仓库伙计这里却没有,那就麻烦大了,这说明仓库伙计有可能把之前的记录帐页给丢掉了,也就意味着粮食有丢失的危险,不过也不用过分担心,老板手下还有一个给力干将叫“SMON”, 是的,之所以给力就是因为是个洋和尚,外来的和尚会念经嘛。这个"SMON"的洋和尚会想办法去找这些编号的粮食,一旦找到就会让仓库伙计按照帐房先生的记录来重新同步自己的帐本,这事就算是完了,可一旦连“SMON”都搞不定,那么老板就头大了,生意就得关张,意味着有粮食可能会丢失。这时候要么从其他地方找来一摸一样的粮食充数,还要让帐房先生和仓库伙计的帐本都清空从0开始重新记录,以免又出现不同的情况。

该笔记摘录自百度,表示写的很好。

检查点和SCN的更多相关文章

  1. Oracle的SCN与检查点机制

    Oracle的SCN与检查点机制 SCN在Oracle的文档上以多种形式出现,一种是System Change Number,另一种是System Commit Number,在大多数情况下,Syst ...

  2. oracle之检查点(Checkpoint)

    检查点是一个数据库事件,它把修改数据从高速缓存写入磁盘,并更新控制文件和数据文件.检查点分为三类:1)局部检查点:单个实例执行数据库所有数据文件的一个检查点操作,属于此实例的全部脏缓存区写入数据文件. ...

  3. oracle scn浅析

    1. 系统SCN号 查询系统SCN号的方法: select dbms_flashback.get_system_change_number from dual commit后系统SCN号会增长,但是即 ...

  4. Oracle SCN机制解析

    SCN(System Chang Number)作为oracle中的一个重要机制,在数据恢复.Data Guard.Streams复制.RAC节点间的同步等各个功能中起着重要作用.理解SCN的运作机制 ...

  5. CKPT,SCN

    CKPT进程:完全检查点 ckpt进程的作用,触发全局检查点,通过DBWR将buffer_cache中的所有脏块写入数据文件中:由于DBWR的机制,因此lgwr会先写,然后dbwr后写. 当完全检查点 ...

  6. 可怕的SCN!(转载)

    一.什么是SCNSCN(System Change Number 简称 SCN)是当Oracle数据库更新后,由DBMS自动维护去累积递增的一个数字.在Oracle中,有四种SCN,分别为:系统检查点 ...

  7. oracle 基础知识(三)--SCN

    一,SCN的介绍     SCN(System Change Number),也就是通常所说的系统改变号或者系统提交号,是数据库中非常重要的一个数据结构. SCN用以标识数据库在某个确切时刻提交的版本 ...

  8. 【体系结构】有关Oracle SCN知识点的整理

    [体系结构]有关Oracle SCN知识点的整理 1  BLOG文档结构图   BLOG_Oracle_lhr_Oracle SCN的一点研究.pdf 2  前言部分 2.1  导读和注意事项 各位技 ...

  9. SQL Server通过File Header Page来进行Crash Recovery

    SQL Server通过File Header Page来进行Crash Recovery 看了盖总的一篇文章 http://www.eygle.com/archives/2008/11/oracle ...

随机推荐

  1. 实现Modbus ASCII多主站应用

    1.更新设计关于原来的协议栈在Modbus ASCII主站应用时所存在的局限性与Modbus RTU也是一样的,所以我们不分析它的不足,只讨论更新设计.我们将主站及其所访问的从站定义为通用的对象,而当 ...

  2. PAT_A1153#Decode Registration Card of PAT

    Source: PAT A1153 Decode Registration Card of PAT (25 分) Description: A registration card number of ...

  3. 对 p 开 n 次方 (数学推论)

    #include<stdio.h> #include<string.h> #include<algorithm> #include<math.h> us ...

  4. Python 爬虫的代理 IP 设置方法汇总

    本文转载自:Python 爬虫的代理 IP 设置方法汇总 https://www.makcyun.top/web_scraping_withpython15.html 需要学习的地方:如何在爬虫中使用 ...

  5. Python语言数据结构和语言结构(2)

    目录 1. Python预备基础 2. Python数据类型 3. Python条件语句 4. while循环和for循环 1. Python预备基础 1.1 变量的命名   变量命名规则主要有以下几 ...

  6. 《你又怎么了我错了行了吧》第八次团队作业:Alpha冲刺

    项目 内容 这个作业属于哪个课程 软件工程 这个作业的要求在哪里 实验十二 团队作业8 团队名称 你又怎么了我错了行了吧 作业学习目标 (1)掌握软件测试基础技术 (2)学习迭代式增量软件开发过程,完 ...

  7. 【hihocoder 1296】数论三·约瑟夫问题

    [题目链接]:http://hihocoder.com/problemset/problem/1296 [题意] [题解] [Number Of WA] 0 [完整代码] #include <b ...

  8. lucene_09_solrj的使用

    什么是solrj solrj 是访问Solr 服务的java客户端,提供索引(增删改)和搜索(查)的请求方法,Solrj 通常在嵌入在业务系统中,通过Solrj的API接口操作Solr服务,如下图: ...

  9. Nginx学习总结(2)——Nginx手机版和PC电脑版网站配置

    考虑到网站的在多种设备下的兼容性,有很多网站会有手机版和电脑版两个版本.访问同一个网站URL,当服务端识别出用户使用电脑访问,就打开电脑版的页面,用户如果使用手机访问,则会得到手机版的页面. 1.判断 ...

  10. Spring Cloud-hystrix(六)

    作用 防止 多个服务相互交互时某个服务运行缓慢导致调用方线程挂起,高并发情况下 导致挂起线太多 引起调用方的服务不可用 能够在服务发生故障或者通过断路器监控向调用方返回一个错误 而不是长时间的等待 S ...