Oracle数据库应用系统的调优,实质就是降低CPU负载、改善I/O性能(磁盘,网络),提高内存使用率。
表空间优化
SYSTEM表空间用于存放ORACLE系统的有关信息,要保证其有足够的空余量。一般的用户建立的对象(object)不应放在SYSTEM表空间中。
应将用户表空间及数据文件一次性设置成合适的大小,避免数据文件自动增长,造成数据段块/段的不连续,影响系统性能。
定期检查数据库表空间的使用情况,进行碎片整理,防止表空间碎块过多,影响系统性能。
通过查询视图dba_extents可获取表空间详细的使用情况。
合并表空间碎片
alter tablespace tablespacename coalesce;
回收数据表段的空闲空间
alter table tablename deallocate unused;
临时表空间主要用于查询操作中的distinct 、union 、order by以及create index操作及存储临时表数据等。Oracle缺省表空间为Temp,其大小为1MB,比较小。系统比较大的话,需要增加Temp表空间到合适的大小,一般为300M-500M左右。
创建用户时应为其选择专用的临时表空间。
应该为大的应用系统建立专门的大的临时表空间,用于进行系统的月报、季报、年报统计存储临时表数据等。
日志文件
将数据文件和日志文件存储于不同磁盘上
数据文件的写入是通过DBWR后台进程实现,日志文件的写入是通过LGWR后台进程实现,由于日志文件是连续的写入,因此无并发处理现象。而数据文