ORACLE 資料庫調優 策略參考

2021-09-07 21:04:34 字數 2113 閱讀 9325

oracle調優策略參考:

工具採用了statspack

安裝statspack

建立乙個120m左右的表空間,如perfstat

在伺服器端用sqlplus(登入到sys as sysdba使用者)執行

@?/rdbms/admin/spcreate

執行收集的方式

exec statspack.snap

隔一段時間後再執行一遍,即可產生2個snap

生成report

@?/rdbms/admin/spreport

按照要求輸入開始和結束的id,即前面2次說產生的id

清除過多資料的方法

@?/rdbms/admin/sppurge

ok,檢視report所產生的lst檔案,可根據下面的引數進行調優判斷

效率方面:

1 buffer nowait

數值大(>95%)表示資料緩衝區足夠大

否則需要增加資料緩衝區的大小,或調整資料檔案io的速度

2 redo nowait

資料大(>99%)表示log_buffer足夠

否則調整log_buffer的大小

3 buffer hit

足夠大(>95%)表示命中率較高

否則可以調整資料緩衝區的大小

4 in-memory sort

數字大(>95%)表示大部分資料在記憶體中進行排序

否則調整sort_area_size的值,或pga_aggregate_target的值

5 library hit

資料大(>95%)表示sql的命中率較高

否則需要調整shared_pool_size的值,或者需要調整sql,使用bind variable

6 soft parse

數字大(>95%)表示sql的緩衝情況比較好

否則需要增加shared_pool_size的值

7 execute to parse

=100 * (1 - parses/executions)

資料大表示重新解釋的次數較多,在snapshot較多的系統中值可能很低,因為完全重新整理後很多sql語句執行時需要重新解釋,動態的創

建表或索引等也會增加parse的次數.

8 latch hit

數字大(>99%)表示內部鎖比較好

否則需要查詢oracle有關版本的bug說明

9 parse cpu to parse elapsed

做sql解釋時cpu的利用率

資料越大表示解釋的效率高

10 non-parse cpu

表示用於sql parse的cpu的比重

數值越大越好

事件方面:

1 buffer busy wait

訪問的塊正在讀取中,其他程序正在將資料讀到cache中

訪問的塊正在修改中,其他程序正在修改cache中的資料

調整思路:將資料檔案放在讀取速度更快的裝置上

2 checkpoint completed

等待checkpoint操作結束

調整思路:,減小一些log buffer的大小,增加checkpoint的頻率,將log檔案放在更快的磁帶裝置上,如raid

3 control file parallel write

等待向所有的控制檔案寫資料

調整思路:減少control file的個數;將不同control file分布到不同的磁碟驅動器

4 control file sequential read

從control file中讀取資訊

調整思路:將control file放在比較空閒的磁碟上;將control file放在速度更快的磁碟上

5 db file scattered read

讀取大量的資料塊到cache中

調整思路:調整大表上的索引,收集更集統計資訊

6 db file sequential read

一般指讀取索引的資料

調整思路:調整索引的設計;rebuild索引,提高索引效率

7 undo segment tx slot

等待獲得回滾段

調整思路: 增加回滾段的個數;增加回滾段的初始extent的數量

Oracle 資料庫調優

通常我們在安裝完oracle資料庫以後本地就直接使用了,但是用在正式的生產環境上還是需要一點優化的,否則就會是預設的最低配機器配置。難以發揮伺服器的效能。這裡記錄一下比較常用的幾個引數 進入檔案 etc sysctl.conf kernel.shmmax 24051816858 記憶體的70 ker...

Oracle調優參考

一 查oracle引數並進行調整1 檢視oracle的init.ora檔案 引數一 db block buffers 引數二 shared pool size 引數三 process 500 引數四 distributed stransactions 200 引數五 sort area size 1...

oracle資料庫調優筆記

select tablespace name,file id,bytes 1024 1024,file name from dba data files order byfile id selectgroup member from v logfile select from v logfile s...