免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3200 | 回复: 9
打印 上一主题 下一主题

请教写redo log SCN的问题?多谢!!!!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-19 11:48 |只看该作者 |倒序浏览
在一个事务提交后,会在redo log中存在一条redo记录,同时,系统为其提供一个最新的SCN。
则其SCN被记录为redo log的low SCN。以后在日志再次被清空前写入的redo记录中SCN则成为Next SCN。
当日志切换或发生checkpoint时,从Low SCN到Next SCN之间的所有redo记录的数据就被DBWn进程写入数据文件中。

如果在日志切换或发生checkpoint前,进行过多次的事务提交,那么在redolog中就会有多条记录,并含多个low SCN,
那么当DBWn时,能否准确找到那条起始的Low SCN吗?

请高手帮忙解释!多谢!!!!!!

[ 本帖最后由 studyinwork 于 2010-1-21 20:32 编辑 ]

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
2 [报告]
发表于 2010-01-19 16:56 |只看该作者
帮你顶一下,这个不太清楚。

论坛徽章:
0
3 [报告]
发表于 2010-01-20 11:55 |只看该作者
多谢 再顶!

论坛徽章:
0
4 [报告]
发表于 2010-01-20 20:28 |只看该作者
楼主,redo的内容不是DBWR写的,是lgwr或arch写的,而且日志发生切换与检查点发生的动作也不一样,日志切换的时候如果数据库是归档模式,那么就会把当前的日志组先复制到归档路径下,然后清空该日志组,而发生检查点进程则是把内存里面的log_buffers中的日志数据写入当前日志组中。
按楼主的意思,应该是问在发生日志切换的时候,归档日志如何归档的吧?
貌似只要是日志切换,那么当前要切换的日志组里所有的日志文件会全部COPY到归档目录下,不存在先后scn.

如果是从内存写到当前日志组,也就是发生检查点或者其他写事件,那么内存里面的数据也是全部写入当前日志组的。

至于事物提交所产生的scn号,应该主要是在恢复的时候用,比如你的数据库down了,你用rman备份恢复到了一个时间点,然后当前时间点跟你数据库down机时刻还有差距,那么数据库就会调用归档日志跟还未备份的重做日志的内容,对比你数据库当前的scn和归档日志里面记录的scn来找到一个合适的恢复点。

这个是我的理解。

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
5 [报告]
发表于 2010-01-20 21:38 |只看该作者
4#的说法比较正确。

论坛徽章:
0
6 [报告]
发表于 2010-01-21 10:05 |只看该作者
呵呵,感谢楼上2位的回复,但是可能没有完全理解我说的意思!

其实我问的主要是怎样写数据文件,从哪个起始点写?

欢迎继续探讨,共同提高!

论坛徽章:
0
7 [报告]
发表于 2010-01-21 16:46 |只看该作者
。楼主,我不明白你的意思。
你说的写数据文件是指日志文件?
日志文件在磁盘上默认就那3个redo01.log,redo02.log,redo03.log,当然你可以根据需要添加。
这3个文件所对应的数据就是内存中的log_buffer呀,log_buffer是整体写的,其大小一般也就3MB左右吧,系统设定是每3秒或者内存1/3满时写一次,当然你手动设置检查点也会发生lgwr的写操作。
上面的操作貌似跟SCN起点没关系。

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
8 [报告]
发表于 2010-01-21 19:09 |只看该作者
不知道坛里有多少OCP啊。

论坛徽章:
0
9 [报告]
发表于 2010-01-21 19:46 |只看该作者
.楼上的。OCP我很怀疑1年之内会在中国泛滥。就跟前2年的CCNP和CCIE一样。
上上周我去深圳尚观看了下OCP的考试。。基本就是开卷了。
不过这个作为敲门砖还是可以,进去了能拿多少就看自己本事了。

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
10 [报告]
发表于 2010-01-21 22:00 |只看该作者
是啊。因为钱。我根本没考(可能过不了,最关键的是我根本拿不出那么多考试费)。OCP已经烂了,就像MCSE一样了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP