谁能介绍一下 oracle 中检查点 及SCN的用法。
请用白话来讲。严谨不要求!谢谢!还有SCn,我的理解是SCN就是一个标志同一状态数据库对象的戳。还请高手赐教!还请介绍一下CKPT进程是干什么事的。...
请用白话来讲。严谨不要求!谢谢! 还有SCn,我的理解是 SCN 就是一个标志同一状态数据库对象的戳。还请高手赐教! 还请介绍一下CKPT进程是干什么事的。
展开
6个回答
展开全部
有一家叫甲骨文的粮店,老板很严谨,为了防止仓库的粮食在买入卖出的时候发生问题,他制订一套流程,首先进出仓库的每一旦粮食都要求有一个编号(SCN),而且出入库之前必须先放到一个平台上(buffer cache),他命令仓库叫大头的伙计(datafile head)来首先记录这个编号,然后每隔一定的时间(log_checkpoint_timeout)或者库房平台上的粮食堆放到一定的数量或者仓库伙计换班(log swtich)的时候,一个叫“点点”(CKPT)的后院家奴就会把仓库伙计记录的信息拿给帐房先生同时还会催促码放在仓库平台的粮食入仓或者出仓(DBWn),帐房先生根据“点点”拿来的帐页记录到自己的帐本上。这样一来每天老板要和账房先生、仓库伙计进行账务的核对,一旦发现仓库伙计记录了而帐房先生没记录的情况就要求帐房先生把伙计记录的信息誊写到自己的帐本上,而如果发现帐房先生有记录了而仓库伙计这里却没有,那就麻烦大了,这说明仓库伙计有可能把之前的记录帐页给丢掉了,也就意味着粮食有丢失的危险,不过也不用过分担心,老板手下还有一个给力干将叫“SMON”, 是的,之所以给力就是因为是个洋和尚,外来的和尚会念经嘛。这个"SMON"的洋和尚会想办法去找这些编号的粮食,一旦找到就会让仓库伙计按照帐房先生的记录来重新同步自己的帐本,这事就算是完了,可一旦连“SMON”都搞不定,那么老板就头大了,生意就得关张,意味着有粮食可能会丢失。这时候要么从其他地方找来一摸一样的粮食充数,还要让帐房先生和仓库伙计的帐本都清空从0开始重新记录,以免又出现不同的情况。
不知道够不够白。。。。。
不知道够不够白。。。。。
展开全部
Oracle使用它来标记数据库在过去时间内的状态和轨迹。
SCN有点类似于sequence,Oracle在SGA中增加它。当一个事务修改或者插入数据,Oracle首先写入一个新的SCN到回滚段中。log writer进程立刻把提交的记录写入到重做日志中,这条提交的记录将拥有唯一的SCN。事实上,把SCN写入到日志,就意味着一个事务的完成。SCN帮助Oracle决定在一次突然中断或者SHUTDOWN ABORT后,是否需要一个崩溃恢复。
ckpt是检查点进程,向DBWR布置写数据文件,更新控制文件,数据文件头信息,记录检查点
SCN有点类似于sequence,Oracle在SGA中增加它。当一个事务修改或者插入数据,Oracle首先写入一个新的SCN到回滚段中。log writer进程立刻把提交的记录写入到重做日志中,这条提交的记录将拥有唯一的SCN。事实上,把SCN写入到日志,就意味着一个事务的完成。SCN帮助Oracle决定在一次突然中断或者SHUTDOWN ABORT后,是否需要一个崩溃恢复。
ckpt是检查点进程,向DBWR布置写数据文件,更新控制文件,数据文件头信息,记录检查点
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
SCN是oracle中的系统改变序号,是一种逻辑时钟一样的概念,一般数据库系统故障恢复,数据恢复、一致性读等情况下需要用到。
CKPT主要是触发DBWR,DBWn等进程
说白了就是保证数据写到日志文件中去
CKPT主要是触发DBWR,DBWn等进程
说白了就是保证数据写到日志文件中去
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、有一家叫甲骨文的粮店,老板很严谨,为了防止仓库的粮食在买入卖出的时候发生问题,他制订一套流程,首先进出仓库的每一旦粮食都要求有一个编号(SCN),而且出入库之前必须先放到一个平台上(buffer cache);
2、这样一来每天老板要和账房先生、仓库伙计进行账务的核对,一旦发现仓库伙计记录了而帐房先生没记录的情况就要求帐房先生把伙计记录的信息誊写到自己的帐本上,而如果发现帐房先生有记录了而仓库伙计这里却没有,那就麻烦大了,这说明仓库伙计有可能把之前的记录帐页给丢掉了,也就意味着粮食有丢失的危险。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我就mark下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询