ITPUB??ì3
ITPUB论坛 » IBM数据库产品 » 关于BLK_LOG_DSK_FUL与FORCE APPLICATION的问题

标题: 关于BLK_LOG_DSK_FUL与FORCE APPLICATION的问题
离线 beginner_bj
资深会员


精华贴数 2
个人空间 0
技术积分 2110 (751)
社区积分 11 (10049)
注册日期 2002-4-2
论坛徽章:2
会员2007贡献徽章授权会员    
      

发表于 2007-3-28 21:41 
关于BLK_LOG_DSK_FUL与FORCE APPLICATION的问题

小弟不是来拉人的,请各位版主不要见怪。只是感觉这个话题挺有意思,而国内DB2的高人基本都只在ITPUB出没,LOVEUNIX很少有高手光顾,所以想请各位看看这个问题。

问题简单的说,就是:
在设置BLK_LOG_DSK_FUL=YES后,遇到LOG FULL的情况,如果在EXPAND FS前先做了FORCE APPLICATION,是不是一定会引起DB CRASH?道理何在?

详细的,请看这里:
http://www.loveunix.net/discuz/v ... &extra=page%3D1


__________________
BLOG : http://www.cublog.cn/u/739/http://www.loveunix.net/discuz/forumdisplay.php?fid=70&page=1
只看该作者    顶部
离线 bpmfhu
风往北吹



精华贴数 11
个人空间 0
技术积分 8770 (139)
社区积分 1009 (944)
注册日期 2001-12-26
论坛徽章:28
现任管理团队成员ITPUB元老itpub2007年荐股参与纪念徽章管理团队2007贡献徽章管理团队2006纪念徽章会员2007贡献徽章
会员2006贡献徽章授权会员生肖徽章2007版:牛2008北京奥运纪念徽章:体操2008北京奥运纪念徽章:柔道2008北京奥运纪念徽章:排球

发表于 2007-3-29 07:53 
BLK_LOG_DSK_FUL=YES 日志满得时候application还在 这个时候force 造成数据库不一致 有可能应用做回滚.但是不一定crash吧我有一次在分区数据库上面做类似得操作,是一个数据仓库系统 做了很长时间得回滚 实在等不了,就db2_kill了
呵呵


__________________
茅屋之下,或有贤良;蒿草之中,或有兰香. Blog:http://www.free2way.net
只看该作者    顶部
离线 beginner_bj
资深会员


精华贴数 2
个人空间 0
技术积分 2110 (751)
社区积分 11 (10049)
注册日期 2002-4-2
论坛徽章:2
会员2007贡献徽章授权会员    
      

发表于 2007-3-29 08:56 
在回滚的时候做了db2_kill?那不是造成数据库不一致了吗?


__________________
BLOG : http://www.cublog.cn/u/739/http://www.loveunix.net/discuz/forumdisplay.php?fid=70&page=1
只看该作者    顶部
离线 Zoroaster
中级会员



精华贴数 0
个人空间 0
技术积分 410 (4758)
社区积分 0 (1219581)
注册日期 2006-12-19
论坛徽章:0
      
      

发表于 2007-3-29 10:16 
1 应该不会,如果 CRASH 了,应该查查为什么。物理层面修改文件了? DB2 bug?

2 重要的是,BLK_LOG_DSK_FUL设置 是针对日志空间不够,而不是 LOG FULL 的(除非logsecond设了-1)。所以,原帖的命题容易让初学者糊涂。

3 db2kill 不推荐正常情况下使用,但是造成不一致的比例没有那么高。(当然,生产上慎用)


__________________
gmail : liulifang.cn@gmail.comblog@ITPUB http://Zoroaster.itpub.net/
只看该作者    顶部
离线 beginner_bj
资深会员


精华贴数 2
个人空间 0
技术积分 2110 (751)
社区积分 11 (10049)
注册日期 2002-4-2
论坛徽章:2
会员2007贡献徽章授权会员    
      

发表于 2007-3-29 11:08 
关于2,BLK_LOG_DSK_FUL设置应该是针对所有LOG FULL 的情况,而不是只针对日志空间不够这一种情况吧?


关于3,原先做的是DELETE操作,回滚的时候肯定正在将已删的数据补回来,这时候DB2KILL了,数据库肯定就不一致了吧?


__________________
BLOG : http://www.cublog.cn/u/739/http://www.loveunix.net/discuz/forumdisplay.php?fid=70&page=1
只看该作者    顶部
离线 Zoroaster
中级会员



精华贴数 0
个人空间 0
技术积分 410 (4758)
社区积分 0 (1219581)
注册日期 2006-12-19
论坛徽章:0
      
      

发表于 2007-3-29 11:10 
关于2,BLK_LOG_DSK_FUL设置应该是针对所有LOG FULL 的情况,而不是只针对日志空间不够这一种情况吧?

->你看 它是 DiSK_FULL,因此只是空间不够

关于3,原先做的是DELETE操作,回滚的时候肯定正在将已删的数据补回来,这时候DB2KILL了,数据库肯定就不一致了吧?

->不会,正常情况下,日志没有apply完,还会留在日志中,restart database可以重新恢复。


__________________
gmail : liulifang.cn@gmail.comblog@ITPUB http://Zoroaster.itpub.net/
只看该作者    顶部
离线 beginner_bj
资深会员


精华贴数 2
个人空间 0
技术积分 2110 (751)
社区积分 11 (10049)
注册日期 2002-4-2
论坛徽章:2
会员2007贡献徽章授权会员    
      

发表于 2007-3-29 14:58 


QUOTE:
最初由 Zoroaster 发布
关于2,BLK_LOG_DSK_FUL设置应该是针对所有LOG FULL 的情况,而不是只针对日志空间不够这一种情况吧?

->你看 它是 DiSK_FULL,因此只是空间不够

关于3,原先做的是DELETE操作,回滚的时候肯定正在将已删的数据补回来,这时候DB2KILL了,数据库肯定就不一致了吧?

->不会,正常情况下,日志没有apply完,还会留在日志中,restart database可以重新恢复。


关于2,刚刚做了实验,确实是您说的这样。
关于3,DB要做CRASH RECOVER的,时间会比ROLLBACK短很多吗?


__________________
BLOG : http://www.cublog.cn/u/739/http://www.loveunix.net/discuz/forumdisplay.php?fid=70&page=1
只看该作者    顶部
离线 Zoroaster
中级会员



精华贴数 0
个人空间 0
技术积分 410 (4758)
社区积分 0 (1219581)
注册日期 2006-12-19
论坛徽章:0
      
      

发表于 2007-3-29 15:46 
关于3,DB要做CRASH RECOVER的,时间会比ROLLBACK短很多吗?

-> crash recovery 是并行处理机制,的确快。但一般我不建议为了一个回滚而这么搞,除非是那种很大的操作,估计回滚时间很长的,而你对 DB2 重启这操作很熟悉。


__________________
gmail : liulifang.cn@gmail.comblog@ITPUB http://Zoroaster.itpub.net/
只看该作者    顶部
离线 beginner_bj
资深会员


精华贴数 2
个人空间 0
技术积分 2110 (751)
社区积分 11 (10049)
注册日期 2002-4-2
论坛徽章:2
会员2007贡献徽章授权会员    
      

发表于 2007-3-29 17:02 
非常感谢


__________________
BLOG : http://www.cublog.cn/u/739/http://www.loveunix.net/discuz/forumdisplay.php?fid=70&page=1
只看该作者    顶部
离线 bpmfhu
风往北吹



精华贴数 11
个人空间 0
技术积分 8770 (139)
社区积分 1009 (944)
注册日期 2001-12-26
论坛徽章:28
现任管理团队成员ITPUB元老itpub2007年荐股参与纪念徽章管理团队2007贡献徽章管理团队2006纪念徽章会员2007贡献徽章
会员2006贡献徽章授权会员生肖徽章2007版:牛2008北京奥运纪念徽章:体操2008北京奥运纪念徽章:柔道2008北京奥运纪念徽章:排球

发表于 2007-3-30 07:20 
db2_kill后 再restart 可以在db2diagl里面看到crash recovery的信息 重新apply log这个是必然的


__________________
茅屋之下,或有贤良;蒿草之中,或有兰香. Blog:http://www.free2way.net
只看该作者    顶部
相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问