针对Oracle数据库及其应用程序的优化
1.引言
随着信息化时代的到来,人们开始广泛地使用数据库技术对大量而复杂的信息进行科学高效的管理。在数据库领域中的各种应用软件大量涌现,有Visual Foxpro,Power Builder等等,但其中Oracle是这个领域中最优秀也是最流行的大型数据库应用软件。本文就在Oracle中如何优化数据库及其应用程序进行了研究。
2.优化数据库
2.1 优化设置控制文件的个数,位置及其备份
建议CONTROL_FILE初始化参数中指定多个文件应大于2,并将控制文件镜像到不同位置,并要把这些控制文件备份到安全的磁盘中。
2.2 优化设计表空间,数据文件的大小及位置
2.2.1设计表空间
尽量把同一时间对磁盘的读写操作分散开,如对一个表中数据进行更新时,数据库将同时去读该表中的数据和该表上的索引信息,如果把表的数据信息和索引信息都放在同一个数据文件中,则数据库的速度将会变慢。最好是把数据信息和索引信息分别放在不同磁盘的两个数据文件中,此时数据库对磁盘的读写操作将分散在两个磁盘上,速度将得到显著提高。因此在设计数据库的表空间和数据文件时,首先给表和表的索引分别创建两个表空间(存放用户数据的数据表空间和存放表索引的索引表空间)。另外,还根据该系统的数据量的大小及系统中的数据的性质不同,再考虑创建几个数据表空间或者给数据表空间添加几个数据文件。
2.2.2 设计数据文件的大小
把记录大小相当的表放在同一个表空间中,这时一个表空间的存储参数设置,可以保证表中的记录都放在一个范围中,避免了一条记录跨范围存放,可以明显数据库的性能。
2.2.3 设计数据文件的位置
为了避免磁盘的I/O操作冲突,应把数据文件创建在不同位置。
2.3 优化设计重演日志文件
2.3.1 重演日志文件的大小
由于数据库在利用重演日志文件时是循环使用它们的,而且当LGWR进程在两个日志文件切换时,将自动产生一个检测点,所以重演日志文件的大小会直接影响到检测点出现的频率。而由于在数据库检测点时,对用户而言,数据库的速度会受影响,所以检测点的出现频率大,或者检测点正好出现在数据库处理数据高峰期,将会极大影响数据库的性能。因此,重演日志文件的大小设计,应考虑检测点出现的频率以及检测点应避开数据库处理数据的高峰期。
2.3.2 重演日志文件组的个数
在ARCHIVELOG模式下时,适当增加重演日志文件组的个数,可以降低数据库存档日志文件的频率。
2.3.3 重演日志文件的存档
应把重演日志文件的存档之处设置在磁盘读写更快的物理设备上。这样可以减少日志文件的存档时间。
2.4 回滚段的优化设计
2.4.1 回滚段数目的设计
要考虑数据库需要支持的并发事务的数目,因为每个回滚段有其所能支持的最大事务数,如果回滚段数目不够多,则有些新事务被迫要等待,将影响数据库的性能。
2.4.2 回滚段大小的设计
要考虑该回滚段能容纳数据库可能的最大事务的回滚项数。