Oracle教程学习之面试题04_阿里巴巴Oracle面试题02-基础知识
一、描述Oracle数据库tablespace和datafile之间的关系
答:tablespace是逻辑上的概念,datafile是物理上的概念。
一个tablespace可以由多个datafile组成,一个datafile不能跨越多个tablespace。
二、简单描述Oracle数据库table / segment / extent / block之间的关系
答:一个table至少是一个segment,如果分区表,则每个分区是一个segment,table可以看成是一个逻辑上的概 念,segment可以看成是这个逻辑概念的物理实现;
segment由一个或多个extents组成,segment不可以跨表空间但可以跨数据文件;
extent由多个连续的blocks组成,不可以跨数据文件;
block由1-多个os块组成,是oracle i/o的最小存储单位。
三、Oracle数据库中pctused and pctfree 表示什么含义有什么作用?
答:表示数据块什么时候移入和移出freelist。
pctused:如果数据块的使用率小于pctused的值,则该数据块重新加入到fresslist中。
pctfree:如果数据块的使用率高于pctfree的值,则该数据块从freelist中移出。
四、Oracle数据库本地管理表空间和字典管理表空间的特点,ASSM有什么特点?
答:一个使用freelist管理,一个使用位图管理。
五、Oracle回滚段的作用是什么?
答:保存数据的前像,保证数据读取的时间点一致性。Oracle里数据的多版本特性就是通过回滚段来实现的,正因为此,Oracle数据库实现了读写不竞争的性能优势!
六、Oracle REDO日志的作用是什么?
答:记录对数据库的操作,便于恢复。
七、Oracle SGA 主要有那些部分,主要作用是什么?
答:db_cache(缓存数据块),shared_pool(缓存sql,执行计划,数据字典信息 等),large_pool(MTS模式、parallel 、rman等要用到),java pool(java程序如SQLJ存储过程运行时要用到)。
八、Oracle系统进程主要有哪些,作用是什么?
风哥Oralce教程提示:smon(合并空间,实例恢 复),pmon(清理失败的进程),归档进程(负责在日志切换的时候归档日志文件),lgmr(日志书写器进程,负责写日志),ckpt(检查点进程,触 发检查点),dbwr(数据库写入器,负责把数据写入导 datafile)。
九、对于一个存在系统性能的系统,说出你的诊断处理思路
答:做一个awr,根据top 5,system load,top sql等来做相应的调整。
十、列举几种诊断IO、CPU、性能状况的方法
答:iostat/top/vmstat/topas/free/nmon
十一、对raid10 和raid5有何认识?
风哥Oralce教程提示:raid10是先镜像后条带,适合对写入速度要求较高的数据库系统,特别是online redolog文件,
raid5适合大部分的数据库系统和数据仓库系统,读性能优于写性能。
十二、对statspack/awr/addm有何认识?
答:一个性能诊断工具而已,其本质就是在两个时间点采样两个系统数据。(动态性能视图),然后根据两个snapshot,产生一个报告。
4:如果系统现在需要在一个很大的表上创建一个索引,你会考虑那些因素,如何做以尽量减小对应用的影响答:
1)增大sort_area_size(8i)/pga_aggregate_target(9i)值。
2)如果表有分区(一般大表都要用到分区的),按分区逐个建索引,如果是本地索引的话。
3)系统空闲的时候建。
十三、综合随意类
1)为何要选择做DBA呢?
万金油答案:爱好加职业历史积累
2)你最擅长的是oracle哪部分?
万金油答案:性能优化、sql调优、备份恢复。
3)喜欢oracle吗?喜欢上论坛吗?或者偏好oracle的哪一部分?
随意回复:itpux论坛:http://www.itpux.com,Oracle的SQL优化。
4)随意说说你觉得oracle最有意思的部分或者最困难的部分
万金油答案::最有意思的是SQL调优,最困难的也是SQL调优化