老方块o培训21班初中第_第1页
老方块o培训21班初中第_第2页
老方块o培训21班初中第_第3页
老方块o培训21班初中第_第4页
老方块o培训21班初中第_第5页
已阅读5页,还剩123页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、消息消息分组:群消息对象:老方块 ORACLE 培训 21 班日期: 2013-1-7L117-立立(583258437) 19:57:07快 8 点了L37-学委(380407449) 20:00:178 点了L51-文杰(332174114) 20:00:29L51-文杰(332174114)20:00:36呼叫校长001-培训老方块(44793227)20:01:05都来了吗L117-立立(583258437) 20:01:11我第一天来L114 shawwang(674431873)20:01:12lalleL54-梁耀(534133204)20:01:151L117-立立(58325

2、8437)20:01:18看了 前几天发的001-培训老方块(44793227)20:01:19立立是新来的吧L117-立立(583258437) 20:01:25看的好累啊L117-立立(583258437) 20:01:26呵呵L117-立立(583258437) 20:01:27是的L117-立立(583258437) 20:01:29呵呵001-培训老方块(44793227)20:01:30跟的上吗001-培训老方块(44793227)20:01:45好,我来考验下大家昨天的课掌握程度L117-立立(583258437)20:01:51感觉上有的地方 比较枯燥001-培训老方块(447

3、93227)20:02:03是比较枯燥001-培训老方块(44793227)20:02:08理解了就会好点001-培训老方块(44793227)20:02:13第 1 题:001-培训老方块(44793227)20:02:18什么是 DATA DICTIONARYCACHE,它还有个别名叫什么?为什么取这个别名?L87-小安(446464087) 20:02:33ROW CACHEL37-学委(380407449) 20:02:57row cache 把数据字典的用到的行娶进来L37-学委(380407449) 20:03:25数据字典缓存001-培训老方块(44793227)20:03:30

4、那 DATA DICTIONARY CACHE 起到什么作用的L37-学委(380407449) 20:04:06提高数据字典的速度L68-byf(2468217977) 20:04:17进行语义鸡西的时候,快速L52-阿仲(234070450) 20:04:24内存存放的数据字典信息001-培训老方块(44793227)20:04:36不是为了提高001-培训老方块(44793227)数据字典的速度20:04:45数据字典 CACHE 保存了最近最常使用的数据对象定义,如用户、权限、列、表、索引等全部可以放到数 据字典共享。L54-梁耀(534133204)20:04:48用来语意分析和语句

5、分析的001-培训老方块(44793227)20:05:33数据文件对应的是我们系统表空间中存放的数据字典001-培训老方块(44793227)20:05:57而在内存中存放了系统表空间中的数据字典的部分行001-培训老方块(44793227)20:06:06所以又名 row cache001-培训老方块(44793227)20:06:35如果数据字典能直接在内存命中,我们称为row cache hit001-培训老方块(44793227)20:06:44越高,性能越好001-培训老方块(44793227)20:06:47理解了吧L117-立立(583258437) 20:07:23看来没好好

6、学啊,都没有人答对001-培训老方块(44793227)20:07:24我看没有一个能完全001-培训老方块(44793227)20:07:34透彻的第 2 道题:001-培训老方块(44793227)20:07:56举几个 DATA DICTIONARYL87-小安(446464087) 20:08:13CACHE 中对象名的例子?DC_USERS DC_PRIVSDC_TABLES用户列表权限列表表的列表DC_COLUMNS 某表的字段列表001-培训老方块(44793227)20:08:22很好001-培训老方块(44793227)20:08:28这次 L87 回答的很正确L87-小安(

7、446464087) 20:08:38才看的笔记001-培训老方块(44793227)20:08:48我们可以搜索 v$rowcache 来才哈坎 row内容L117-立立(583258437) 20:08:49估计也是001-培训老方块(44793227)20:08:56cache 中的我们可以看到各种 row cache 的对象001-培训老方块(44793227)20:09:03这道题就001-培训老方块(44793227)20:09:15给 L87第 3 道题:001-培训老方块(44793227)20:09:27数据库高速缓存采用了多池技术,分别为哪 3 种池?L68-byf(246

8、8217977) 20:10:06buffer cache , keep cache , cycle001-培训老方块(44793227)20:10:13cachegoodL87-小安(446464087)20:10:19数据缓存池 标准池 回收池001-培训老方块(44793227)20:10:26L68 回答的最快001-培训老方块(44793227)20:10:37这道题大家都没异议吧L68-byf(2468217977) 20:10:41终于学会抢答了001-培训老方块(44793227)20:10:41给 L68001-培训老方块(44793227)20:10:48第 4 道题:00

9、1-培训老方块(44793227)20:11:00什么是 REDO?根据变更的块类型不同,REDO 分哪两类型?L87-小安(446464087)20:11:32增删改的线索就是 REDO001-培训老方块(44793227)20:12:10L87 回答的001-培训老方块(44793227)全对,是“线索”没错20:12:19但是 REDO 是数据块变更的线索L68-byf(2468217977) 20:12:35在进行数据的操作之前,把相应的操作日志写到日志文件;001-培训老方块(44793227)20:12:39分为 redo和undo数据块变更一次,就001-培训老方块(447932

10、27)20:12:51一次改量改量就是组成 REDO 的基本001-培训老方块(44793227)20:13:11L87,理解了吗001-培训老方块(44793227)20:13:26那我们 Oracle 中有很多类型的数据块L87-小安(446464087) 20:13:27恩001-培训老方块(44793227)20:13:42比如普通的数据块UNDO 块段头块.001-培训老方块(44793227)20:14:10那么普通数据块修改的线索,我们称为普通数据块的REDO001-培训老方块(44793227)20:14:24普通 UNDO 块修改的线索,我们称为 UNDO 块的 REDO00

11、1-培训老方块(44793227)20:14:26理解了吗001-培训老方块(44793227)20:14:47还记得我昨天讲过 L116 和 L52 的故事吧L87-小安(446464087) 20:14:47恩L68-byf(2468217977) 20:14:51恩L87-小安(446464087) 20:15:02他们是记在不同的 地方的001-培训老方块(44793227)20:15:03这道题又是没人回答对的L87-小安(446464087) 20:15:17又节约了 500 万001-培训老方块(44793227)20:15:21大家对昨天这个故事还有疑惑吗L87-小安(4464

12、64087) 20:15:38还不 来得及复习 暂时没L117-立立(583258437) 20:15:48还没看到呢001-培训老方块(44793227)20:15:53没疑问的话,继续第 5 题001-培训老方块(44793227)20:15:59第 5 道题:001-培训老方块(44793227)20:16:03log buffer 是否受 AMML68-byf(2468217977)?20:16:12受L87-小安(446464087)20:16:17受L52-阿仲(234070450)20:16:36不受001-培训老方块(44793227)20:16:37启动 AMM 后,logL

13、52-阿仲(234070450) 20:16:39buffer 会自动调节吗?L52-阿仲(234070450)20:16:44L68-byf(2468217977) 20:16:44会的L87-小安(446464087) 20:16:47会001-培训老方块(44793227)20:16:54这次 L52 抢对了L54-梁耀(534133204) 20:16:57丌会,还是按照设置好的001-培训老方块(44793227)20:17:00是不受影响的001-培训老方块(44793227)20:17:14L52 昨天没被 T001-培训老方块(44793227)20:17:23好,昨天的内容我

14、们就复习到这里001-培训老方块(44793227)20:17:31我们接着学习今天的内容001-培训老方块(44793227)20:17:37我们进一步来理解下 REDO001-培训老方块(44793227)20:17:57为了便于大家理解 REDO 和 UNDO,以及 REDOBUFFER里的内容,我们只用一个数据块的更改来进行模拟。001-培训老方块(44793227)20:18:09我们有一个表名就叫 block2011,只有 1 行行号 10)001-培训老方块(44793227)20:18:17(假设更新语句如下:001-培训老方块(44793227)20:18:27001-培训老

15、方块(44793227)20:19:04修改数据块号为 2011 的数据块,第 1 个事务更新了 6次,值分别是 1,2,3,4,5,6,然后提交。001-培训老方块(44793227)20:19:15其实更像的是同一行吧L54-梁耀(534133204) 20:19:32是的,只有一行001-培训老方块(44793227)20:19:342011 这个块更新了几次L52-阿仲(234070450) 20:19:486L54-梁耀(534133204) 20:19:506 次L74-圆梦(83842071)20:19:556L114 shawwang(674431873)20:19:566 次

16、L87-小安(446464087) 20:19:57一次L117-立立(583258437) 20:20:021 次L87-小安(446464087) 20:20:13只有一个 COMMIT001-培训老方块(44793227)20:20:15那这个块被修改了 6 次,是不是要量?L87-小安(446464087) 20:20:256 次改L54-梁耀(534133204)20:20:42是的001-培训老方块(44793227)20:20:46L87,理解了吧001-培训老方块(44793227)20:20:56最后提交这 6 次修改001-培训老方块(44793227)20:21:02然后

17、进入第 2 个事务L87-小安(446464087) 20:21:04有点点头绪001-培训老方块(44793227)20:21:08L117-立立(583258437) 20:21:14跟着 L87 也没蒙对001-培训老方块(44793227)20:21:19接着第 2 个事务,仍然修改 2011 号数据块,更新值为 7,8,9.一直到 tL87-小安(446464087)20:21:21001-培训老方块(44793227)20:21:52第 2 个事务更新了 23 次,然后执行了回滚。001-培训老方块(44793227)20:22:35那么 2011 号块更新了 23 次,有 23

18、次改L74-圆梦(83842071) 20:22:50量了吧是L117-立立(583258437) 20:22:53是001-培训老方块(44793227)20:22:59等于有 2 组改L114 shawwang(674431873) 20:23:07量是的001-培训老方块(44793227)20:23:23这两组的改001-培训老方块(44793227)20:23:37量组成了 REDO 的第 1 部分也就是数据块变更的 REDO001-培训老方块(44793227)20:23:44那第 2 部分是什么?L117-立立(583258437) 20:23:53求解L114 shawwang

19、(674431873)20:23:58undo001-培训老方块(44793227)20:24:04是不是还有 UNDO 块的变更的 REDOL68-byf(2468217977) 20:24:04UNDO 酷爱L74-圆梦(83842071) 20:24:05undo001-培训老方块(44793227)20:24:14昨天的故事还记得把001-培训老方块(44793227)20:24:25我们看总的 REDO BUFFER001-培训老方块(44793227)20:24:30了 2 部分001-培训老方块(44793227)20:24:55大家看,第 1 部分是 2011 号普通数据块的

20、REDO001-培训老方块(44793227)20:25:03第 2 部分是 UNDO 块的 REDO001-培训老方块(44793227)20:25:25两者组合起来,就是一组完整的 REDO001-培训老方块(44793227)20:25:28理解了吧L114 shawwang(674431873) 20:25:46理解L37-学委(380407449) 20:26:01-怎么理解啊001-培训老方块(44793227)20:26:16大家看,当值 1 改成 2 时,第 1 部分值是 2,第 2 部分的值对应的是 1L87-小安(446464087) 20:26:18理解了001-培训老方

21、块(44793227)20:27:04大家看,2 和 1 是对应的001-培训老方块(44793227)20:27:07001-培训老方块(44793227)20:27:103 跟 2 对应L114 shawwang(674431873) 20:27:11redo log = < redo ,undo = T-1 redo > ?001-培训老方块(44793227)20:27:29也就是当 2011 块被修改成 3 时,是 2001-培训老方块(44793227)20:27:41到 UNDO 块的值整个过程都被 REDOL87-小安(446464087) 20:27:48下来了就

22、是 在的时候 还要一条删除的内容,以好回滚到前的状态。对吧? 如果提交了,UNDO 的块 ,以前的内容就了L31-班长(44191762)20:27:50一个是原始的,一个是修改的001-培训老方块(44793227)20:28:131 修改 2011 号数据块的变更产生的 REDOL54-梁耀(534133204) 20:28:14undo的是原来的数据001-培训老方块(44793227)20:28:202 这 23+6(29)次修改之前的值假设都保存在UNDOBLOCK1983,那么修改UNDO 数据块UNDOBLOCK1983的变更产生的 REDO。001-培训老方块(44793227

23、)20:28:49由于每次 UNDO 保留的操作都是 2011 块第 10 行的变更。001-培训老方块(44793227)20:28:55所以 UNDO 的每个改BLOCK2011/第 10 行。L54-梁耀(534133204) 20:29:09量中有个指针都指向undo 会记住所有的值还是最后一个值?001-培训老方块(44793227)20:29:37UNDO 会所有未提交的值001-培训老方块(44793227)20:29:47提交了就可以被覆盖了L54-梁耀(534133204) 20:30:33就是说提交之前会1 到 6,提交了就剩下 6 了,是吧001-培训老方块(447932

24、27)20:30:49不是001-培训老方块(44793227)20:31:07提交了,这 6 次 UNDO001-培训老方块(44793227)20:31:35都可以被覆盖能理解吗L54-梁耀(534133204) 20:31:49那意思是就有最新的一个值 7 了L114 shawwang(674431873)20:32:00理解001-培训老方块(44793227)20:32:35就比如 L52 退班,并提交,那么她会进入 21 班群001-培训老方块(44793227)20:32:51但是 L52 在001-培训老方块(44793227)20:33:05群的可以被别人覆盖应该退班的动作已

25、经提交了001-培训老方块(44793227)20:33:16如果有 6 个学生退班001-培训老方块(44793227)20:33:25那么就有 6 个学生进入的001-培训老方块(44793227)20:33:32群如果 6 个学生退班都提交了001-培训老方块(44793227)20:33:48那么这 6 个学生在001-培训老方块(44793227)20:33:52群的都可以被覆盖理解吗L31-班长(44191762) 20:34:00嗯L54-梁耀(534133204)20:34:06奥,理解了,是按照事务来的001-培训老方块(44793227)20:34:13是的L54-梁耀(5

26、34133204) 20:34:21好,继续吧001-培训老方块(44793227)20:34:40执行回滚的时候,从 UNDOBLOCK1983 获取回滚的按下面的顺序修改 BLOCK2011L24-才(423324322) 20:34:47来晚了.,L117-立立(583258437) 20:35:01罚酒 3 杯001-培训老方块(44793227)20:35:02001-培训老方块(44793227)20:35:14比如,我们要回滚掉第 2 个事务001-培训老方块(44793227)20:35:39就要从 s 开始回顾,srqponm.9876001-培训老方块(44793227)2

27、0:35:56共需要回滚 23 次吧L117-立立(583258437) 20:36:14恩L54-梁耀(534133204)20:36:23嗯,是的,一个事务里有 23 次修改。001-培训老方块(44793227)20:36:24也就是需要更新 BLOCK2011提交时的状态001-培训老方块(44793227)20:36:3123 次才能回滚到事务 1懂了吗L54-梁耀(534133204) 20:36:42嗯L117-立立(583258437)20:36:47那第一个事务已经不能回滚了吧,因为已经被覆盖了L87-小安(446464087) 20:37:11因为提交了001-培训老方块(

28、44793227)20:37:17那回滚造成的这 23 次改动,需要再次向量吗?001-培训老方块(44793227)20:37:2923 次改动回滚也需要L01-Cheng(164708491) 20:37:36不用吧。下这 23 笔到 REDO 吗L31-班长(44191762)20:37:37不需要了吧L74-圆梦(83842071)20:37:39丌了把L87-小安(446464087) 20:37:42应该会001-培训老方块(44793227)20:37:44当然要L117-立立(583258437) 20:37:44不需要了 估计L114 shawwang(674431873)2

29、0:37:48是的001-培训老方块(44793227)20:37:54不要的话,你线索又要断了L68-byf(2468217977) 20:37:59假设在回滚的过程中,系统断电,没有回滚,还能回滚吗?L114 shawwang(674431873)20:38:08从 UNDOBLOCK1983 获取回滚的,什么意思001-培训老方块(44793227)20:38:11你从生出来后,你的历史时刻要L87-小安(446464087)20:38:22yesL31-班长(44191762)20:38:24L01-Cheng(164708491) 20:38:27。好吧。001-培训老方块(4479

30、3227)20:38:31理解吗L31-班长(44191762) 20:38:42哦。L54-梁耀(534133204)20:38:48理解001-培训老方块(44793227)20:38:57L114,UNDOBLOCK1983 就好比我们 21 班回退群001-培训老方块(44793227)20:39:00是 UNDO 块L68-byf(2468217977) 20:39:36理解,但是担心回滚过程如果断电,由于回滚过程没有 UNDO会如何?001-培训老方块(44793227), 如果回滚不,20:39:37当然,回滚这 23 次数据块的改动就不再需要 UNDO 了001-培训老方块(4

31、4793227)20:39:42否则就是一个死循环了L01-Cheng(164708491) 20:40:00噢。001-培训老方块(44793227)20:40:06就好比,L52 昨天本来要被 T 掉的001-培训老方块(44793227)20:40:21所以 L52 还加进了 21 班回退群001-培训老方块(44793227)20:40:28今天 L52 续了费001-培训老方块(44793227)20:40:42等于做了回滚操作L74-圆梦(83842071) 20:40:49校长谈钱了L01-Cheng(164708491)20:40:52001-培训老方块(44793227)20

32、:40:52回到昨天 T 掉前的状态L74-圆梦(83842071)20:40:53L39-20:41:25小青春(1004050304)你报名也是为了钱。001-培训老方块(44793227)20:41:34那么 21 班等于要从新加 L52 进班L68-byf(2468217977) 20:41:48相当于没有发生过;抹去记忆的效果001-培训老方块(44793227)20:41:57那此时,L52 的还需要再次加入到 21 班回退群吗?L54-梁耀(534133204) 20:42:09丌用啊L87-小安(446464087) 20:42:10不L117-立立(583258437) 20

33、:42:13不需了001-培训老方块(44793227)20:42:14不用了001-培训老方块(44793227)20:42:28因为 rollback 后就不能再后悔了L117-立立(583258437) 20:42:29不需要 L52 在做 undo 的 redo 了?001-培训老方块(44793227)20:42:38也就是,不可能重复两次回滚的L01-Cheng(164708491) 20:43:13能反悔一次不能反悔两次。001-培训老方块(44793227)20:43:13比如update t set c=1001-培训老方块(44793227)20:43:24;c 原来值是

34、99L52-阿仲(234070450) 20:43:26交了钱是不能退的了001-培训老方块(44793227)20:43:38此时执行 rollback,就回滚到 99001-培训老方块(44793227)20:43:49再次执行 rollback,能回到 1 吗?L24-才(423324322) 20:43:53并不能L24-才(423324322) 20:43:56不能L114 shawwang(674431873)20:43:57但是 1 回丌来了L01-Cheng(164708491)20:43:59不能了。L54-梁耀(534133204) 20:44:01肯定丌能啊001-培训老

35、方块(44793227)20:44:14update t set c=1 ;rollback; 回到 99 rollback; 失效L74-圆梦(83842071)20:44:14no001-培训老方块(44793227)20:44:30大家看,第 2 句 rollback 已经失效了,因为找不到UNDO 对应的信息了001-培训老方块(44793227)20:44:35理解了吧001-培训老方块(44793227)20:44:57UNDO 确实很绕的L01-Cheng(164708491) 20:45:06懂了L54-梁耀(534133204) 20:45:07前滚是丌是可以回到 1 啊L2

36、4-才(423324322) 20:45:32前滚是怎么回事L114 shawwang(674431873)20:45:47回滚操作本身的 redo ,丌带 undo001-培训老方块(44793227)20:45:50不能再次回到 1 了,只能再次执行update t set c=1 ;L54-梁耀(534133204) 20:46:06奥001-培训老方块(44793227)20:46:38大家想知道 UNDO 链的结构吗L54-梁耀(534133204) 20:46:45想啊001-培训老方块(44793227)20:46:47这是本科的内容,大家可以先睹为快L52-阿仲(2340704

37、50) 20:46:49不想L114 shawwang(674431873) 20:46:57看看001-培训老方块(44793227)20:47:03L68-byf(2468217977) 20:47:08阿仲有个性啊L54-梁耀(534133204) 20:47:1752,你丌想怎么找到工作呢L52-阿仲(234070450) 20:47:30找不到,我放弃了001-培训老方块(44793227)20:47:43大家看上图,其实每个数据块中每个事务都有个事务槽001-培训老方块(44793227)20:48:03比如我们刚才有两个事务,就有两个事务槽001-培训老方块(44793227)2

38、0:48:24而回滚是基于数据块的L01-Cheng(164708491) 20:48:28本科的图我收下了。L25-Calvinzhu(502329203) 20:48:30事务槽在 undo 块里面吗?001-培训老方块(44793227)20:48:48如果 BLOCK2011 要回到事务 1 提交的时候L54-梁耀(534133204) 20:49:03看上图是的001-培训老方块(44793227)20:49:06就需要找到回滚的起点,也就是值 r 的 UNDO001-培训老方块(44793227)20:49:35那么事务槽 2 的 UBA的地址001-培训老方块(44793227)

39、20:49:42了回滚的起点的 UNDO也就是值 r 的地址001-培训老方块(44793227)20:49:59一直回滚到 6 截止001-培训老方块(44793227)20:50:29而事务槽 1 的 UBA 指向了事务 1 回滚的起点,也就是值 6 的 UNDO001-培训老方块(44793227)20:50:45那么事务槽 1 的 UBA 就是 UNDO 块值 6 的地址001-培训老方块(44793227)20:50:47理解了吧001-培训老方块(44793227)20:50:54我们再来看这张图001-培训老方块(44793227)20:51:12001-培训老方块(447932

40、27)20:51:29我们看第 1 个块是001-培训老方块(44793227)20:51:43他有个事务槽的 UBA 地址是 BLK51001-培训老方块(44793227)REC120:51:58也就是这个事务回滚的起点是 BLK51 的 REC1 开始001-培训老方块(44793227)20:52:05大家看L117-立立(583258437) 20:52:16看到了线条001-培训老方块(44793227)20:53:08看到了UPDATE 了第1 个块,它的UNDO 链是BLK51 REC,然后是 BLK50 REC5.001-培训老方块(44793227)20:53:37BLK5

41、1 REC=>BLK50 REC5=>BLK50=>BLK50 REC2=>BLK50 REC1001-培训老方块(44793227)REC4=>BLK50REC320:53:48回滚的终点是 BLK50 REC1001-培训老方块(44793227)20:53:51看明白了吧001-培训老方块(44793227)20:54:18看到 UNDO 链了吧001-培训老方块(44793227)20:54:25L54-梁耀(534133204)20:54:31看到了001-培训老方块(44793227)20:54:53我们再看事务在第 2 个块的修改的 UNDO001-

42、培训老方块(44793227)20:54:59看绿色线条001-培训老方块(44793227)20:55:02看到没有L54-梁耀(534133204)20:55:13看到L117-立立(583258437) 20:55:25恩001-培训老方块(44793227)20:55:25第 2 块的事务槽里有个 UBA 地址,指向了回滚的起点,是 BLK52 REC2001-培训老方块(44793227)20:55:37001-培训老方块(44793227)20:56:20回滚的改量是BLK52 REC2=>BLK52REC1=>BLK51REC5001-培训老方块(44793227)2

43、0:56:25看懂了吧L24-才(423324322) 20:56:41L117-立立(583258437)20:56:42001-培训老方块(44793227)20:56:42所以,我们回滚操作是基于数据块为L01-Cheng(164708491)的20:56:51为什么从第 52 个块回滚到了第 51 个块001-培训老方块(44793227)20:57:00我们的 UNDO 链都关联到一个普通数据块001-培训老方块(44793227)20:57:21L01,第 51,52 块都不是普通数据块,而是 UNDO 块001-培训老方块(44793227)20:57:52UNDO存放在哪些 U

44、NDO 块都没关系L01-Cheng(164708491) 20:57:53噢 从近的开始。那我懂了L25-Calvinzhu(502329203) 20:57:54为啥的 undo 不是连续的啊 insert 还可以用到 51undo 块 为了充分利用 undo 表空间吗?001-培训老方块(44793227)20:58:05只要能把链串起来就行L54-梁耀(534133204) 20:58:36UBA 是什么的简称?L114 shawwang(674431873)20:58:38undo log 是基于时间的,undo data 是基于块的,关联用链表001-培训老方块(44793227)

45、20:58:43L25,为什么一定要连续啊,哪儿有空值,插哪儿啊,又不是你一个事务独占这个 UNDO 块001-培训老方块(44793227)20:59:00如果是独占,那当然可以完全熟悉的存放 UNDOL01-Cheng(164708491) 20:59:02这个到那个块和高水位什么的有关吧001-培训老方块(44793227)20:59:10但是 UNDOL25-Calvinzhu(502329203) 20:59:17嗯的存放是有大量并发的001-培训老方块(44793227)20:59:22L54,UBA 就是 UNDO001-培训老方块(44793227)的地址20:59:33UND

46、O BLOCK ADDRESSL54-梁耀(534133204) 20:59:42嗯L117-立立(583258437) 20:59:44嗖噶L01-Cheng(164708491) 20:59:47噢。懵懂了L25-Calvinzhu(502329203) 20:59:50undo 在内存结构里是在哪个部分呢也是在 buffercache 里面吧?L74-圆梦(83842071)20:59:51嘎嘎001-培训老方块(44793227)20:59:55更复杂的知识,得在本科介绍L24-才(423324322) 21:00:18行 就到这里 刚刚好001-培训老方块(44793227)21:0

47、0:49我们来看下实际的001-培训老方块(44793227)21:01:01在UNDO 块的UNDO是什么样L114 shawwang(674431873)21:01:06含链表001-培训老方块(44793227)21:01:06我们看到数据库中任何一个块中某个值的单次改动都REDO。001-培训老方块(44793227)21:01:19除了UNDOBLOCK 和 DATABLOCK,我们看5.2 UNDO SEGMENT 头块也会变更,所以也会产生REDO。001-培训老方块(44793227)21:01:47记住,先001-培训老方块(44793227)21:02:08REDO 才可以

48、去修改数据块能理解吗001-培训老方块(44793227)21:02:38也就是你打算今天去看索,再去看001-培训老方块(44793227)21:03:02,你要先记下看的线还有个原则001-培训老方块(44793227)21:03:14要先UNDO,才能修改普通数据块L114 shawwang(674431873)21:03:21理解L54-梁耀(534133204)21:03:43头块是丌是每个 UNDO 的标识啊?001-培训老方块(44793227)21:03:45也就是,L52 要 T 掉,就必须先进 21 班退班群,再从21 班 T 掉001-培训老方块(44793227)21:

49、03:53理解了吗L114 shawwang(674431873)21:04:12undo update redo log001-培训老方块(44793227)21:04:21L54-梁耀(534133204)21:03:43头块是不是每个 UNDO 的标识啊?答:UNDO 段头信息001-培训老方块(44793227)21:04:27了这个 UNDO 段所有事务的事务槽有个事务槽表L54-梁耀(534133204) 21:04:48嗯L24-才(423324322) 21:04:51意思明白 图没怎么看懂001-培训老方块(44793227)21:04:55001-培训老方块(4479322

50、7)21:05:06上图5.2、5.1、11.5 分别表示我这次 REDO 的操作类型L114 shawwang(674431873) 21:05:3222:10 就是 UBA?001-培训老方块(44793227)21:05:51比如我们 L52 要从 21 班 T 掉,那么进入 21 班回退群的话,L52 的操作类型是 INSERT001-培训老方块(44793227)21:06:05这些操作类型,ORACLE 用了一个代号来表示001-培训老方块(44793227)21:06:24下面我介绍几个常间的操作类型001-培训老方块(44793227)21:06:25 5.2 是设置事务表状态

51、为活动,所以事务表的段头块就有单次改动,并事务是 ACTIVE 的。001-培训老方块(44793227)21:06:49REDO 值是 10,10 表示是该 5.1 操作是写 UNDO,它把原来字段 RUNS 的值74 改成75,那 74 要作为UNDO RECORD 保存在REDO 里,它涉及的块号是 42 块。UNDO 里的每条改指向原数据块(42 号)。001-培训老方块(44793227)21:07:03量都会 11.5 是数据块修改的操作,将块号 42 的块的特定行的 RUNS 列改成 75。这就是 REDO 信息,我们发现写 UNDO 的 REDO 比 REDO 的 REDO 早,就是为了保证能回退。001-培训老方块(44793227)21:07:18好,REDO 和 UNDO,我就介绍到这里001-培训老方块(44793227)21:07:26大家一定要去复习下001-培训老方块(44793227)21:07:36棕色字体的内容,大家了解即可001-培训老方块(44793227)21:07:41我们先休息 10 分钟L54-梁耀(534133204) 21:07:51嗯,L24-才(423324322) 21:07:52还有其他的吗?L24-才(423324322) 21:07:59操作类型

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论