[关闭]
@sharif 2018-05-12T15:35:10.000000Z 字数 1861 阅读 613

Oracle作业1&2

Oracle
时间:12/05/18 11:22

Group Task1 Summarize Oracle architecture with mind map in English

References:

mind map 手绘?还是电脑

tool1 百度脑图
专门制作脑图
tool2 Processon
这个可以自己画图,各种图都行,如流程图,脑图,思维导图等

注意

in English



Group Task2

1.DML语句一般分为三类:Insert,update,和delete三类语句,大家觉得这三类语句哪种语句对回滚的相关操作负荷最大,哪种最小?或者说哪种操作产生的undo最多,哪种产生的undo最少?

2. 依次执行如下语句:

  1. SQL> Create table t as select * from all_objects;
  2. SQL> Create index idx_object_id on t(object_id);
  3. SQL> Set autotrace on
  4. SQL> Set linesize 1000
  5. SQL> Set timing on
  6. SQL> Select object_name from t where object_id=29;

接下来再执行一次

  1. Select object_name from t where object_id=29;

大家认真观察前后两次输出的结果找找看有没有什异?分析有差异的原因。

3. 假如数据库是一个很大的数据库,数据量庞大,访问量非常高,而共享池却非常小,那会怎么样?我们该怎么做?

4. 如果一个尺寸很大的排序由于内存无法装得下要在磁盘中进行,而操作系统却闲置着大量的内存未使用,我们要怎么做?

5. 假如一个数据库系统存在大量的更新操作,产生了大量的日志需要从REDO Buffer中写出到日志文件里,则日志写满后切换到下一个日志的频率会不断加快。切换过程中数据库需要等待切换完成才可以正常运作,因为切换没完成,LGWR就无法把REDO Buffer的数据继续写出来,而数据库中REDO Buffer产生的记录总是优先于数据库缓存区产生的,这是串行的顺序,那此时数据库更新的动作就根本不可能成功,一定要等待日志切换成功,世界才恢复正常次序。日志频繁地切换,我们的更新一直在停停走走的,我们该如何优化?

6.Update t set object_id=92 where object_id=29 语句执行完毕后,如果一直不提交,最终会从数据缓冲区刷进磁盘吗?

7.从SQL发起的始末,谈谈Oracle体系结构。



汇总以及时间要求:

每个人对7个问题作出回答,周一中午左右发到群里(包括脑图),文件格式,最好txt吧简单。
建议用百度脑图,因为可以共享,使用百度账号登陆即可,因为可以共享

方便大家,提高效率

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注