楼主: songyuee

[精华] 关于checkpoint

[复制链接]
论坛徽章:
31
管理团队2006纪念徽章
日期:2006-04-16 22:44:452012新春纪念徽章
日期:2012-02-13 15:11:522012新春纪念徽章
日期:2012-02-13 15:11:522012新春纪念徽章
日期:2012-02-13 15:11:522012新春纪念徽章
日期:2012-02-13 15:11:52铁扇公主
日期:2012-02-21 15:02:402013年新春福章
日期:2013-02-25 14:51:242014年新春福章
日期:2014-02-18 16:41:11马上有车
日期:2014-02-18 16:41:11马上有车
日期:2014-02-19 11:55:14
31#
发表于 2005-3-31 20:06 | 只看该作者
最初由 husthxd 发布
[B]意犹未尽.
顶上去.继续......

那位xd来解析一下tom下面的这段话?
the infamous "checkpoint not complete, cannot allocate new log" message.

this occurrs when Oracle attempts to reuse a log file but the checkpoint that would flush the blocks that may have redo in this log file has not yet completed
-- we must wait until that checkpoint completes before we can reuse that file -- thats when this message is printed.  during this time (when we cannot allocate a new log) processing is suspended in the database while the checkpoint is made to complete ASAP. [/B]


you need to understand this from the point of crash recovery.

During the time of crash recovery, Oracle will do the recovery automatically. so all Oracle has is the online redo log file.

So if Oracle allows the checkpoint not finish but reuse the redo log , then if Oracle need to do crash recovery, it must need the archived log file.  then the crash recovery is not automatic because the archived log file can be moved .

使用道具 举报

回复
论坛徽章:
31
管理团队2006纪念徽章
日期:2006-04-16 22:44:452012新春纪念徽章
日期:2012-02-13 15:11:522012新春纪念徽章
日期:2012-02-13 15:11:522012新春纪念徽章
日期:2012-02-13 15:11:522012新春纪念徽章
日期:2012-02-13 15:11:52铁扇公主
日期:2012-02-21 15:02:402013年新春福章
日期:2013-02-25 14:51:242014年新春福章
日期:2014-02-18 16:41:11马上有车
日期:2014-02-18 16:41:11马上有车
日期:2014-02-19 11:55:14
32#
发表于 2005-3-31 20:10 | 只看该作者
because Oracle's recovery process is roll forward then roll back. so if Oracle need to do a recovery at RBA point A, all the data blocks that are used in the redo record  before RBA point A must be on the disk. then Oracle can start to rollforward by applying the redo log.

Instance/Crash recovery is similar except it only has the online redo log to use.

使用道具 举报

回复
论坛徽章:
168
马上加薪
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-01-04 11:49:54蜘蛛蛋
日期:2011-12-05 16:08:56ITPUB十周年纪念徽章
日期:2011-11-01 16:19:41设计板块每日发贴之星
日期:2011-07-22 01:01:02ITPUB官方微博粉丝徽章
日期:2011-06-30 12:30:16管理团队成员
日期:2011-05-07 01:45:082011新春纪念徽章
日期:2011-01-25 15:42:562011新春纪念徽章
日期:2011-01-25 15:42:33
33#
发表于 2005-3-31 20:16 | 只看该作者
got it,3k

使用道具 举报

回复
论坛徽章:
18
操作系统板块每日发贴之星
日期:2005-07-28 01:01:51沸羊羊
日期:2015-03-04 14:43:43马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11ITPUB 11周年纪念徽章
日期:2012-10-09 18:05:072011新春纪念徽章
日期:2011-02-18 11:43:32ITPUB9周年纪念徽章
日期:2010-10-08 09:32:272009新春纪念徽章
日期:2009-01-04 14:52:282008新春纪念徽章
日期:2008-02-13 12:43:03ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44
34#
发表于 2005-4-17 22:32 | 只看该作者
关于checkpoint和恢复过程的详细全面的资料, 也可以参考了:
http://www.askguoyu.com/db/detailofArchtecture.htm

使用道具 举报

回复
论坛徽章:
2
授权会员
日期:2007-08-13 17:45:21生肖徽章2007版:鸡
日期:2008-01-02 17:35:53
35#
发表于 2006-7-18 15:30 | 只看该作者
不是很明白

使用道具 举报

回复
论坛徽章:
0
36#
发表于 2006-7-31 09:27 | 只看该作者
切换日志会触发checkpoint
什么是checkpoint?
    checkpoint是一个数据库事件,它将已修改的数据从高速缓存刷新到磁盘,并更新控制文件和数据文件。
   
    什么时候发生checkpoint?
    我们知道了checkpoint会刷新脏数据,但什么时候会发生checkpoint呢?以下几种情况会触发checkpoint。
    1.当发生日志组切换的时候
    2.当符合LOG_CHECKPOINT_TIMEOUT,LOG_CHECKPOINT_INTERVAL,fast_start_io_target,fast_start_mttr_target参数设置的时候
    3.当运行ALTER SYSTEM SWITCH LOGFILE的时候
    4.当运行ALTER SYSTEM CHECKPOINT的时候
    5.当运行alter tablespace XXX begin backup,end backup的时候
    6.当运行alter tablespace ,datafile offline的时候;

使用道具 举报

回复
论坛徽章:
0
37#
发表于 2006-7-31 09:29 | 只看该作者
贴错地方了,不好意思

使用道具 举报

回复
论坛徽章:
6
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44奥运会纪念徽章:马术
日期:2008-05-14 13:44:53奥运会纪念徽章:花样游泳
日期:2008-05-27 12:50:19生肖徽章2007版:鼠
日期:2009-06-30 21:57:37生肖徽章2007版:鼠
日期:2009-11-07 16:10:092010年世界杯参赛球队:韩国
日期:2010-02-25 13:02:37
38#
发表于 2007-11-8 11:32 | 只看该作者
引自roman2000
切换日志会触发checkpoint
什么是checkpoint?
checkpoint是一个数据库事件,它将已修改的数据从高速缓存刷新到磁盘,并更新控制文件和数据文件。

什么时候发生checkpoint?
我们知道了checkpoint会刷新脏数据,但什么时候会发生checkpoint呢?以下几种情况会触发checkpoint。
1.当发生日志组切换的时候
2.当符合LOG_CHECKPOINT_TIMEOUT,LOG_CHECKPOINT_INTERVAL,fast_start_io_target,fast_start_mttr_target参数设置的时候
3.当运行ALTER SYSTEM SWITCH LOGFILE的时候
4.当运行ALTER SYSTEM CHECKPOINT的时候
5.当运行alter tablespace XXX begin backup,end backup的时候
6.当运行alter tablespace ,datafile offline的时候;


谢谢

使用道具 举报

回复
论坛徽章:
24
生肖徽章:狗
日期:2006-09-07 10:14:43数据库板块每日发贴之星
日期:2008-07-26 01:02:20生肖徽章2007版:兔
日期:2008-10-13 11:10:11奥运会纪念徽章:铁人三项
日期:2008-10-24 13:27:21开发板块每日发贴之星
日期:2008-12-27 01:01:09生肖徽章2007版:马
日期:2009-11-18 10:45:032010新春纪念徽章
日期:2010-03-01 11:21:02ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51ERP板块每日发贴之星
日期:2011-05-18 01:01:01ITPUB十周年纪念徽章
日期:2011-11-01 16:21:15
39#
发表于 2007-11-29 17:10 | 只看该作者
原帖由 sydongsun 于 2005-4-17 22:32 发表
关于checkpoint和恢复过程的详细全面的资料, 也可以参考了:
http://www.askguoyu.com/db/detailofArchtecture.htm



网页都不存在了!

有点晕,再来一遍

使用道具 举报

回复
招聘 : 数据库管理员
论坛徽章:
25
生肖徽章2007版:龙
日期:2008-05-06 11:07:48咸鸭蛋
日期:2011-10-19 10:09:12ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282012新春纪念徽章
日期:2012-01-04 11:49:542013年新春福章
日期:2013-02-25 14:51:24
40#
发表于 2008-2-1 12:21 | 只看该作者
原帖由 wing hong 于 2005-3-31 20:10 发表
because Oracle's recovery process is roll forward then roll back. so if Oracle need to do a recovery at RBA point A, all the data blocks that are used in the redo record  before RBA point A must be on the disk. then Oracle can start to rollforward by applying the redo log.

Instance/Crash recovery is similar except it only has the online redo log to use.

这个很经典。一语道破两个恢复的玄机。
如果checkpoint一直不complete,有什么后果。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表