oracle事物槽如何获取uba?

在一个事物开始时,会产生一个事物id(xid),然后在回滚段段头的事物表中记录该事物id,同时分配回滚块儿,将uba的地址也记录在事物表中,其次在数据块儿头部事物槽也记录事物id,那么事物槽中的uba是怎么获取到的,是不是根据事物表中的xid获取到的?
QQ图片20130729103723.jpg
标签: 暂无标签
冰城

写了 3 篇文章,拥有财富 69,被 2 人关注

转播转播 分享分享 分享淘帖
回复

使用道具

guo
P4 | 发表于 2013-7-30 10:14:03
数据库中的数据修改的时候,会将修改前的数据写到回滚块中,同时uba地址指向对应的回滚块。
回复

使用道具

P4 | 发表于 2013-7-30 11:19:02
guo 发表于 2013-7-30 10:14
数据库中的数据修改的时候,会将修改前的数据写到回滚块中,同时uba地址指向对应的回滚块。
...

嗯,谢谢啊,有没有研究过,数据块是怎么知道往哪些回滚块中写呢?数据块头部的事物槽中的uba是怎么获取到的?
回复

使用道具

P4 | 发表于 2013-9-2 09:17:16
事物开始时,在pga中就已经生成了事物信息,然后undo_header生成事物表,然后是undo_block生成undo记录,然后才是修改数据块。有了上面的步骤,datablock中的事物槽uba还不知道怎么来的么
回复

使用道具

P4 | 发表于 2013-9-2 19:31:24
不是很懂啊
回复

使用道具

P4 | 发表于 2014-6-19 18:22:01
在事务表的槽位中已经对应好了回滚块儿的地址了。
回复

使用道具

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈