1、代码共享,减少硬解析:防止语句分配空间的不足而过去,防止碎片;
2、IO优化:
a.最小化数据访问(减少IO操作的设计、优化大规模访问数据的SQL、使用LMT代替DMT);
b.均衡IO分布(数据文件放在RAID5,redo和控制文件放在磁盘或者RAID 1)
c.合理使用临时表空间(8i为用户手动指定,9i指定缺省的全局临时表空间,10g使用临时表空间组);
d.
3、索引没有使用的三种情况:
a.没有索引;
b.有索引,但是SQL书写时不走索引;
c.计算代价后,发现全表扫描比索引代价要小;
4、RAID条带化最好是区大小的整数倍或者整数分之一;
5、归档日志文件的配置:
a.启用多归档进程归档多个文件;
b.减少归档对重做日志的影响(将redo和arch文件分散在不同的磁盘);
6、竞争的优化:
a.锁存器latch(9i后,latch由数据库根据CPU数量自动管理);
b.锁lock;
c.回滚段(大事务和长事务都很明显);
7、锁分DML锁(数据锁)--通常所指的锁,和DDL锁(字典锁);
8、阻塞的会话能看到锁竞争,我们只关心锁竞争;
9、回滚段的区中,每个区中只允许存在一个活动的事务;
10、在进行数据导入时,commit=y,每导buffer中规定大小的数据,进行一次提交;sqlloader通过rows参数,没导入多少行就提交一次;
11、shared pool使用的前提条件:代码是可共享的;
12、如何绑定变量:更改语句;修改cursor_sharing(force|exact|similar),不建议使用强制的绑定变量;
--------------笔记越记越少了,汗...
阅读(844) | 评论(0) | 转发(0) |