详解Oracle数据库优化方案与实践(三)
p,default及reclye(比如把一些常用的配置表固定在内存里等)。
日志文件分析(定期检查Oracle生成的日志文件,定期备份、删除)。
硬盘空间维护(定期对Oracle 对象使用的空间情况进行监视)。
四,Oracle数据库优化前后比较
1、批量重复的SQL语句执行性能
根据网元数量,各地的执行的完成时间有所区别。
用于数据合并和汇总的Procedure的计算性能
通过statspack的周期性采集数据,我们可以使用以下语句,计算我们想统计的Procedure的执行情况: www.2cto.com
SELECTTO_CHAR(sn.snap_time,'yyyy-mm-ddhh24:mi:ss')ASsnap_time,s.disk_reads, s.buffer_gets,s.elapsed_time/1000000ASelapsedtime FROM(SELECThash_value,sql_text,address,last_snap_id FROMSTATS$SQLTEXTWHEREpiece=0ANDsql_textLIKE'%&sqltext_key%')t, (SELECTaddress,hash_value,snap_id,sql_text,disk_reads,executions, buffer_gets,rows_processed,elapsed_time FROMSTATS$SQL_SUMMARY)s,STATS$SNAPSHOTsn WHEREs.hash_value=t.hash_value ANDs.address=t.address ANDs.snap_id=t.last_snap_id ANDsn.snap_id=s.snap_id;比如,我们以perfstat用户执行该SQL,输入“to_comp”,可以观察到数据库里保存的有的to_comp存储过程的执行时间,我们发现,其执行时间,从优化前的几千秒,最后稳定在优化后的几十秒。
注:to_comp是整体调用执行一次所有网元的数据合并和汇总的procedure。
用于小区分析数据的Procedure的计算性能
使用上面的方法,我们一样可以知道,小区分析的procedure执行,从优化前的约几千秒,最后稳定在优化后的几十秒。
批量数据采集入库性能
使用bcp,能从以前约15分钟,减少到约4分钟。
2、一些单次、不常用的操作的语句执行性能
GUI上的性能数据查询,告警数据查询,响应时间都极快,几乎不再出现长时间等待响应的情况。
www.2cto.com
五,参考
常用的优化工具
statspack
sql*plus
TOAD
作者 chen11-1