一些总结而已
-
fei890910
2013-12-12 22:26:30
-
Oracle
-
原创
1,scan ip的功能
客户端在访问数据库的时候, tns需要设置主机ip地址。在rac情况下有多个实例提供服务,有scan ip的情况下,就可以在客户端只配置一个scanip可以访问数据库。 为客户端提供统一的服务
2,10g和11g rac的区别
10g的时候ocr盘和vote是分开的,而11g的ocr盘和vote盘可以放在一起。
11g 添加了scan ip 来为客户端提供统一的服务
3,undo 表空间的作用
undo 表空间是存放未提交的数据块,从这点看undo有两个功能 一,读一致性,是在数据未提交之前,其它会话又要访问这些数据的时候,必须从undo段里读取。
4,oracle的内存结构
5,当归档文件满的时候,实例hang住了应该删以前的归档还是删最近的归档比较好
一定要删的话应该删最近的归档,因为如果删了以前的归档。那么以前的备份如果需要应用这个归档就报废了。如果删最近的归档,那么我们可以马上做一个备份。
这里主要是热备份和归档的关系。通常恢复的时候需要所有的数据文件scn一致的时候才能能开库。基于这个要求,如果备份需要应用到这个归档而这个归档没有,那么这个备份就是没用的。所以备份和归档是配合使用的。
6,什么情况需要resetlogs 开库
不完全恢复、基于旧的控制文件的恢复、联机日志文件损坏
Resetlogs其实就是根据控制文件让系统自动重新生成redo
7,高水位线,pctfree,pctused,freelist,全表扫描,行链接,行迁移,集簇因子 等概念
高水位线是:oracle 以区为单位 分配给对象空间后,而区一段连续的块组成,oracle在使用块的时候总有一些事已经使用的,还有的已经分配给对象待使用的。通过高水位线来划分
oracle全表扫描的时候,会读取高水位线以下的所有空间,即使数据已经被delete以后,高水位线也不会移动。所以一张表使用久了以后就会产生很多的碎片,需要定期去move 表
这个和索引非常相识,当索引块中的数据被删除后,索引块中的数据只是被标识为失效,但是空间并没有被释放。所有索引也需要定期的重构
集簇因子:主要是oracle优化器在选择 索引还是全表扫描的一个参数,当这个值和块数接近的时候执行计划 会选择索引 ,但是当这个值和行数接近的时候,执行计划不会选择索引
表的存储方式:通常我们使用的堆表存储的方式是无续的,随机存放在分配的空间里。
索引的存储方式:通过我们使用索引在数据库中存储的方式是排序的,默认是升序
这就导致索引和表存在很大的差异,如果要消除集簇因子可以通过给索引列排序的方式从新组织表的存放。
8,全局检查点:产生的时候dbwr会将当前scn之前的脏块都写到数据文件,并将scn记录到控制文件和数据文件头
增量检查点:实时记录检查点队列中dbwr写的位置,并记录到控制文件中,ckpt每三秒检查一次检查点点队列,并估计实例恢复的时间,如果时间到会触发dbwr写脏块。
局部检查点:数据文件和表空间,会触发dbwr写脏块。