Oracle數(shù)據(jù)庫性能優(yōu)化_第1頁
Oracle數(shù)據(jù)庫性能優(yōu)化_第2頁
Oracle數(shù)據(jù)庫性能優(yōu)化_第3頁
Oracle數(shù)據(jù)庫性能優(yōu)化_第4頁
Oracle數(shù)據(jù)庫性能優(yōu)化_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Oracle數(shù)據(jù)庫性能優(yōu)化摘要:信息化程度的提高,信息系統(tǒng)用戶數(shù)量不斷增多,數(shù)據(jù)庫中存儲的數(shù)據(jù)量成幾何級數(shù)增長,導(dǎo)致系統(tǒng)運行一段時間后數(shù)據(jù)庫性能會隨之下降。與此同時,人們對信息系統(tǒng)使用效率的要求越來越高。這就需要對數(shù)據(jù)庫進(jìn)行性能調(diào)優(yōu)。由于Oracle數(shù)據(jù)庫先進(jìn)的、完整的、集成的電子商務(wù)解決方案,占據(jù)了絕大多數(shù)的市場份額,因此Oracle數(shù)據(jù)庫的性能調(diào)優(yōu)技術(shù)顯得極其必要。本文主要從數(shù)據(jù)庫服務(wù)器內(nèi)存參數(shù)調(diào)整,SQL語句優(yōu)化兩方面論述如何在系統(tǒng)設(shè)計,運行過程中對Oracle數(shù)據(jù)庫進(jìn)行性能優(yōu)化。數(shù)據(jù)庫服務(wù)器內(nèi)存參數(shù)調(diào)整主要論述共享池的大小設(shè)置問題,SQL語句優(yōu)化主要從Oracle解析SQL語句的機(jī)制方

2、面來論述如何寫出高效的SQL語句。通過上述方面的調(diào)優(yōu)以確保數(shù)據(jù)庫系統(tǒng)的性能。關(guān)鍵詞:oracle數(shù)據(jù)庫;性能;系統(tǒng)全局區(qū):SQL語句中圖分類號TP392文獻(xiàn)標(biāo)識碼A文章編號1674-6708(2010)29-0211-010、引言隨著信息化程度的不斷提高,現(xiàn)有的信息系統(tǒng)的用戶數(shù)量急速增長,作為用于存儲和處理數(shù)據(jù)的系統(tǒng)后臺數(shù)據(jù)庫,其中的數(shù)據(jù)存儲量也隨著這些因素成幾何級數(shù)的增長。在實際使用中,數(shù)據(jù)庫系統(tǒng)最初的設(shè)置不能滿足運行一段時間以后系統(tǒng)對性能的要求,如果不能及時對系統(tǒng)進(jìn)行優(yōu)化處理,數(shù)據(jù)庫的性能會越來越差,嚴(yán)重影響人們對信息的使用效率,同時這些系統(tǒng)的隱患如果不及時解決,最后必將導(dǎo)致系統(tǒng)的崩潰。由

3、于Oracle數(shù)據(jù)庫先進(jìn)的、完整的、集成的電子商務(wù)解決方案,Oracle數(shù)據(jù)庫占據(jù)了絕大多數(shù)的市場份額。因此,對Oracle的優(yōu)化技術(shù)的研究對信息系統(tǒng)有非常重要的意義。正因為Oracle數(shù)據(jù)庫的優(yōu)化非常重要,Oracle的優(yōu)化工作應(yīng)當(dāng)貫穿整個系統(tǒng)的設(shè)計,運行的整個過程。Orade數(shù)據(jù)庫的優(yōu)化主要包括以下幾個方面,數(shù)據(jù)庫參數(shù)調(diào)整,SQL語句優(yōu)化,服務(wù)器操作系統(tǒng)參數(shù)調(diào)整以及網(wǎng)絡(luò)性能調(diào)優(yōu)。本文主要從數(shù)據(jù)庫服務(wù)器內(nèi)存參數(shù)調(diào)整和SQL語句優(yōu)化兩個方面論述如何對Oracle數(shù)據(jù)庫進(jìn)行性能調(diào)優(yōu)。1、對數(shù)據(jù)庫服務(wù)器內(nèi)存分配的調(diào)整由于對服務(wù)器內(nèi)存參數(shù)的調(diào)整對oracle的性能影響顯著,它成為Orade數(shù)據(jù)庫性能

4、調(diào)優(yōu)的首選對象。服務(wù)器內(nèi)存參數(shù)的調(diào)整主要是對數(shù)據(jù)庫系統(tǒng)全局區(qū)的調(diào)整,系統(tǒng)全局區(qū)包括共享池、數(shù)據(jù)緩沖區(qū)、日志緩沖區(qū)。其中最主要的是對數(shù)據(jù)緩沖區(qū)和共享池的參數(shù)調(diào)整。數(shù)據(jù)庫緩沖區(qū)的作用主要是將從磁盤中讀取的數(shù)據(jù)塊存放在內(nèi)存緩存中,從這個意義上說數(shù)據(jù)庫緩沖區(qū)越大,存放的共享數(shù)據(jù)就越多,減少了對磁盤數(shù)據(jù)的物理讀操作,也就提高了系統(tǒng)的響應(yīng)速度。共享池的作用主要是用來存放最近使用過的sql語句的,它由一個最近最少使用的算法來管理,由庫高速緩存和數(shù)據(jù)字典緩沖區(qū)兩部分組成。修改這一參數(shù)的設(shè)置,能提高系統(tǒng)性能。是由Oracle數(shù)據(jù)庫系統(tǒng)處理用戶提交的SQL語句的步驟決定的。Oracle處理sQL語句,PlySQL

5、程序之前會先對其進(jìn)行語法分析,權(quán)限確認(rèn),在確認(rèn)語法正確,權(quán)限合理的之后,會對sOL進(jìn)行優(yōu)化,最終生成執(zhí)行計劃。這個過程花費了大量的時間,如果在執(zhí)行這些語句的時候可以將這些內(nèi)容保存下來,在下次執(zhí)行相同的sOL語句或者PUSQL就可以跳過這個步驟,進(jìn)而提高系統(tǒng)的響應(yīng)速度。如果這一區(qū)域比較大,在內(nèi)存中找到相同數(shù)據(jù)的概率越大??梢詼p少對SQL語句的重復(fù)解析的時間,能明顯的改進(jìn)數(shù)據(jù)庫的性能。但是共享池也并非越大越好,如果共享池太大,Oracle為了維護(hù)這一共享結(jié)構(gòu),需要付出更大的管理開銷,反而對數(shù)據(jù)庫系統(tǒng)的性能維護(hù)不利。一般來說,系統(tǒng)內(nèi)存為1G,共享池可設(shè)為150M-200M,內(nèi)存增壓1G,該值增加1O

6、OM,但共享池的最大值不應(yīng)當(dāng)超過500M。綜上所述,系統(tǒng)全局區(qū)的參數(shù)設(shè)置應(yīng)當(dāng)隨著系統(tǒng)的運行進(jìn)行適當(dāng)?shù)恼{(diào)整,使之在合理的范圍內(nèi)盡量大,但是不能超過一個限度。如果這一區(qū)域過大,反而會占用操作系統(tǒng)使用的內(nèi)存,引起虛擬內(nèi)存的頁面交換,降低了系統(tǒng)效率。2、SqI優(yōu)化由于應(yīng)用程序的執(zhí)行最終歸結(jié)為后臺數(shù)據(jù)庫中SQL語句的執(zhí)行,SQL語句本身的執(zhí)行效率就成為了影響oracle數(shù)據(jù)庫執(zhí)行效率的一個重要因素,當(dāng)我們對Oracle處理SQL語句的機(jī)制有所了解,通過對SQL語句進(jìn)行適當(dāng)?shù)恼{(diào)整,就能提高Oracle數(shù)據(jù)庫系統(tǒng)的性能。1)在基于規(guī)則的優(yōu)化器中,Oracle對from子句中的表名是按照從右到左的順序進(jìn)行解析

7、的,即:From子句中排在最后的表會被首先處理。我們把這張表稱做驅(qū)動表。當(dāng)from字句中包含多個標(biāo)的情況下,oracLe是通過排序合并的方式連接這些表的,為了提高oracle的執(zhí)行效率,應(yīng)當(dāng)選擇包含記錄條數(shù)少的表作為驅(qū)動表,即放在from子句的最后。當(dāng)from子句中有3張以上的表進(jìn)行連接查詢時,需要將連接其他表的交叉表作為驅(qū)動表。2)在oracle語句中)where子句的執(zhí)行順序是自下而上的對語句進(jìn)行解析的。為了提高sql語句的執(zhí)行效率,應(yīng)該將能過濾掉大量數(shù)據(jù)的條件寫在where子句的最后。3庵selcect語句中使用*雖然對編程人員簡單方便,oracle會自動列出所有列名。但oracle解析

8、*時則是通過查詢數(shù)據(jù)字典來完成對。的轉(zhuǎn)換的,這樣耗費了更多的時間用來查詢數(shù)據(jù)字典,轉(zhuǎn)換,必然降低執(zhí)行效率,因此在selcect語句中應(yīng)當(dāng)直接列出所有的列名。4)用where子句代替having子句,在where子句中排除不需要的記錄,這樣的執(zhí)行效率將遠(yuǎn)遠(yuǎn)高于執(zhí)行完成之后用having子句對記錄進(jìn)行篩選。總體來說,Oracle數(shù)據(jù)庫的性能優(yōu)化涉及的方面很廣。是一個系統(tǒng)工程,需要在系統(tǒng)設(shè)計運行的過程中,不斷運用以上提到的各個方面,對Oracle數(shù)據(jù)庫系統(tǒng)進(jìn)行優(yōu)化,以確保數(shù)據(jù)庫的使用效率。數(shù)據(jù)庫的性能變差,往往不是一個方面的問題,而是各種問題相互結(jié)合導(dǎo)致的,因此,需要對各種因素綜合分析,對各種優(yōu)化手段綜合應(yīng)用

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論