Oracle性能分析與優(yōu)化
一、何時考慮性能的問題。
考慮性能的問題應(yīng)該貫穿于整個系統(tǒng)建設(shè)的各個階段中:系統(tǒng)設(shè)計、數(shù)據(jù)庫設(shè)計、代碼開發(fā)、系統(tǒng)運維。
1.系統(tǒng)設(shè)計階段:
系統(tǒng)架構(gòu)方面:二層、三層、多層
系統(tǒng)類型:OLAP——生成報表等,主要考慮海量數(shù)據(jù)的處理速度
OLTP——主要考慮內(nèi)存(cache)、并發(fā)、并行等
系統(tǒng)生命周期中系統(tǒng)能力的估算:并發(fā)數(shù)、查詢的響應(yīng)時間等。負(fù)面例子:2008北京奧運會訂票系統(tǒng)崩潰。
2.數(shù)據(jù)庫設(shè)計階段,著重考慮數(shù)據(jù)庫對象的類型和屬性:
分區(qū)。
索引及其類型(OLTP,一般用B-Tree;OLAP,一般考慮用Bitmap或Text索引)。
并行。
其它的一些對象屬性(ASSM、并發(fā)屬性)。
內(nèi)存相關(guān)參數(shù)。
并發(fā)相關(guān)參數(shù)。
I/O相關(guān)參數(shù)。
數(shù)據(jù)庫架構(gòu)(單節(jié)點、RAC、分布式)。
硬件性能(CPU、內(nèi)存等)。
3.高效的SQL與變量綁定(OLTP)
誤區(qū):不恰當(dāng)?shù)?使用Hint:強(qiáng)制使用索引、強(qiáng)制設(shè)定驅(qū)動表、強(qiáng)制優(yōu)化器模式
4.對象類型:屬性、參數(shù)的修改
二、DBA應(yīng)該參與到系統(tǒng)建設(shè)的各個階段中,開發(fā)人員應(yīng)盡可能地考慮性能問題。
三、優(yōu)化的內(nèi)容:
1.參數(shù):OLTP:內(nèi)存:SGA、PGA
并行:PROCESSES、SESSIONS
2.對象屬性:分區(qū)、并行
3.索引類型:B-Tree、Bitmap、Text
4.高效的SQL
5.SQL執(zhí)行計劃
6.對表進(jìn)行分析:直方圖,DBMS_STATS包
四、優(yōu)化工具
1.SQL_Trace
2.10046事件
3.性能視圖,如:V$SQL、V$SESSION、V$LOCK、V$SESSION_LONGOPS
4.10053事件,將顯示Oracle執(zhí)行計劃中的所有詳細(xì)操作
5.優(yōu)化工具:Hint—— 優(yōu)化器模式
訪問路徑
表連接順序
并發(fā)方式
Statspack(AWR)報告、ASH報告
【Oracle性能分析與優(yōu)化】相關(guān)文章:
PHP性能優(yōu)化技巧11-11
PHP性能優(yōu)化小技巧11-11
Web系統(tǒng)架構(gòu)的性能優(yōu)化10-17
Oracle 認(rèn)證含金量分析06-02
2017最新優(yōu)化Linux系統(tǒng)硬盤性能方法07-02
淺談WLAN網(wǎng)絡(luò)容量性能設(shè)計和優(yōu)化11-15
OracleDBA數(shù)據(jù)庫性能進(jìn)行優(yōu)化10-19
SEO優(yōu)化技巧分析06-16