偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Oracle數據庫系統(tǒng)調優(yōu)方法

數據庫 Oracle
Oracle數據庫是甲骨文公司的一款關系數據庫管理系統(tǒng)。到目前仍在數據庫市場上占有主要份額。當然Oracle數據庫的調優(yōu)是保證Oracle數據庫正常工作的必要工作,那么如何實現Oracle數據庫的系統(tǒng)調優(yōu)呢?

Oracle 數據庫廣泛應用在社會的各個領域,特別是在Client/Server模式的應用,但是應用開發(fā)者往往碰到整個系統(tǒng)的性能隨著數據量的增大顯著下降的問題,為了解決這個問題,Oracle數據庫的系統(tǒng)調優(yōu)工作就必須得到實現,Oracle數據庫的系統(tǒng)調優(yōu)能夠很好的確保Oracle數據庫在正常的工作狀態(tài)下工作,從以下幾個方面:數據庫服務器、網絡I/O、應用程序等對整個系統(tǒng)加以調整,充分發(fā)揮Oracle的效能,提高整個系統(tǒng)的性能。

1 調整數據庫服務器的性能

 

Oracle數據庫服務器是整個系統(tǒng)的核心,它的性能高低直接影響整個系統(tǒng)的性能,為了調整Oracle數據庫服務器的性能,主要從以下幾個方面考慮:

 

1.1 調整

 

操作系統(tǒng)以適合Oracle數據庫服務器運行

 

Oracle數據庫服務器很大程度上依賴于運行服務器的操作系統(tǒng),如果操作系統(tǒng)不能提供***性能,那么無論如何調整,Oracle數據庫服務器也無法發(fā)揮其應有的性能。

 

1.1.1 為Oracle數據庫服務器規(guī)劃系統(tǒng)資源

 

據已有計算機可用資源, 規(guī)劃分配給Oracle服務器資源原則是:盡可能使Oracle服務器使用資源***化,特別在Client/Server中盡量讓服務器上所有資源都來運行Oracle服務。

 

1.1.2 調整計算機系統(tǒng)中的內存配置

 

多數操作系統(tǒng)都用虛存來模擬計算機上更大的內存,它實際上是硬盤上的一定的磁盤空間。當實際的內存空間不能滿足應用軟件的要求時,操作系統(tǒng)就將用這部分的磁盤空間對內存中的信息進行頁面替換,這將引起大量的磁盤I/O操作,使整個服務器的性能下降。為了避免過多地使用虛存,應加大計算機的內存。

 

1.1.3 為Oracle數據庫服務器設置操作系統(tǒng)進程優(yōu)先級

 

不要在操作系統(tǒng)中調整Oracle進程的優(yōu)先級,因為在Oracle數據庫系統(tǒng)中,所有的后臺和前臺數據庫服務器進程執(zhí)行的是同等重要的工作,需要同等的優(yōu)先級。所以在安裝時,讓所有的數據庫服務器進程都使用缺省的優(yōu)先級運行。

 

1.2 調整內存分配

 

Oracle數據庫服務器保留3個基本的內存高速緩存,分別對應3種不同類型的數據:庫高速緩存,字典高速緩存和緩沖區(qū)高速緩存。庫高速緩存和字典高速緩存一起構成共享池,共享池再加上緩沖區(qū)高速緩存便構成了系統(tǒng)全程區(qū)(SGA)。SGA是對數據庫數據進行快速訪問的一個系統(tǒng)全程區(qū),若SGA本身需要頻繁地進行釋放、分配,則不能達到快速訪問數據的目的,因此應把SGA放在主存中,不要放在虛擬內存中。內存的調整主要是指調整組成SGA的內存結構的大小來提高系統(tǒng)性能,由于Oracle數據庫服務器的內存結構需求與應用密切相關,所以內存結構的調整應在磁盤I/O調整之前進行。

 

1.2.1 庫緩沖區(qū)的調整

 

庫緩沖區(qū)中包含私用和共享SQL和PL/SQL區(qū),通過比較庫緩沖區(qū)的命中率決定它的大小。要調整庫緩沖區(qū),必須首先了解該庫緩沖區(qū)的活動情況,庫緩沖區(qū)的活動統(tǒng)計信息保留在動態(tài)性能表v$librarycache數據字典中,可通過查詢該表來了解其活動情況,以決定如何調整。

 

1.2.2 數據字典緩沖區(qū)的調整

 

數據字典緩沖區(qū)包含了有關數據庫的結構、用戶、實體信息。數據字典的命中率,對系統(tǒng)性能影響極大。數據字典緩沖區(qū)的使用情況記錄在動態(tài)性能表v$librarycache中,可通過查詢該表來了解其活動情況,以決定如何調整。

 

1.2.3 緩沖區(qū)高速緩存的調整

 

用戶進程所存取的所有數據都是經過緩沖區(qū)高速緩存來存取,所以該部分的命中率,對性能至關重要。緩沖區(qū)高速緩存的使用情況記錄在動態(tài)性能表v$sysstat中,可通過查詢該表來了解其活動情況,以決定如何調整。

 

2 調整 Client/Server 模式下的網絡 I/O

 

Client/Server環(huán)境中的應用處理是分布在客戶應用程序和數據庫服務程序之間的。在 Client/Server環(huán)境中Client與Server之間的網絡I/O是整個系統(tǒng)性能提高的瓶頸,一個客戶應用程序引起的網絡I/O越少,應用及整個系統(tǒng)的性能越好。減少網絡I/O的最重要的一條原則:將應用邏輯集中在數據庫服務器中。

 

2.1 使用Oracle數據庫的完整約束性

當為應用建表時,應當為一些有特殊要求的數據加上適當的完整性約束,這樣就能實現由數據庫本身而不是應用程序來約束數據符合一定的條件。數據庫服務器端的完整約束的執(zhí)行操作是在比SQL語句級別更低的系統(tǒng)機制上優(yōu)化,它與客戶端無關,只在服務器中運行,不需在Client 端和Server端之間傳遞SQL語句,有效地減輕網絡I/O負擔。

 

2.2 使用數據庫觸發(fā)器

 

完整約束性只能實現一些較簡單的數據約束條件,對一些較復雜的事物處理規(guī)則就無能為力,這時***不要在應用程序中實施復雜的程序控制,而是應當采用數據庫觸發(fā)器來實施復雜的事物規(guī)則。數據庫觸發(fā)器能實現由數據庫本身,而不是應用程序,來約束數據符合復雜的事物處理規(guī)則,并且容易創(chuàng)建,便于管理,避免大量的網絡I/O。

 

2.3 使用存儲過程、存儲函數和包

 

Oracle的存儲過程和存儲函數是命名的能完成一定功能并且存儲在Server端的PL/SQL的集合。包是一種把有關的過程和函數組織封裝成一個數據庫程序單元的方法。它們相對于應用程序的過程、函數而言,把SQL命令存儲在Server端。使用存儲過程和存儲函數,應用程序不必再包含多個網絡操作的SQL語句去執(zhí)行數據庫服務器操作,而是簡單調用存儲過程和存儲函數,在網絡上傳輸的只是調用過程的名字和輸出結果,這樣就可減少大量的網絡I/O。

 

3 應用程序的調整

 

3.1 SQL語句的優(yōu)化

 

SQL語句的執(zhí)行速度,可以受很多因素的影響而變化。但主要的影響因素是:驅動表、執(zhí)行操作的先后順序和索引的運用??梢杂珊芏嗖煌姆椒ㄩg接地改變這些因素,以達到***的執(zhí)行速度。這里主要探討當對多個表進行連接查詢時應遵循的優(yōu)化原則:

 

3.2 建立和使用視圖、索引

 

利用視圖可以將基表中的列或行進行裁減、隱藏一部分數據,并且能夠將涉及到多個表的復雜查詢以視圖的方式給出,使應用程序開發(fā)簡潔快速。利用索引可以提高查詢性能,減少磁盤 I/O,優(yōu)化對數據表的查詢,加速SQL語句的執(zhí)行。但任何時候建立索引都能提高性能,何時建立索引應當遵循以下原則:該表常用來在索引列上查詢,該表不常更新、插入、刪除等操作,查詢出來的結果記錄數應控制在原表的2%~4%。

 

3.3 使用 Oracle 的數組接口

 

當一個客戶應用程序插入一行或用一個查詢來向服務器請求某行時,不是發(fā)送具有單個行的網絡包,而是采用數組處理,即把要插入的多個行或檢索出的多個行緩沖在數組中,然后通過很少的幾個包就可在網上傳送這些數組。例如,一個給定的Select語句返回2000行數據,每行平均大小為40個字節(jié),數據包的大小為4kB,而數組大小參數(arraysize)設置為20 ,則需從服務器發(fā)送100個數據包到客戶機。如果簡單地把(arraysize)設置為2000,那么同樣的操作只需要傳送 20個數據包。這樣就減少了網絡的傳輸量,提高了所有應用的性能。

 

4 總結

 

我們在開發(fā)應用程序時,遵循上述的方法和原則,對系統(tǒng)進行調整,收到了令人滿意的效果。但是應當指出,由于客戶機、網絡、服務器這3個相互依存的組成部分都必須調整和同步才能產生***的性能,因此還應根據系統(tǒng)的具體情況,具體分析和調整。

通過上文中的詳細講解大家能夠知道Oracle數據庫的系統(tǒng)調優(yōu)的工作的進行流程,希望大家學習了上文之后能夠很好的掌握Oracle數據庫的系統(tǒng)調優(yōu),相信這對大家日后的工作是非常有用的,希望大家都能夠從上文中涉及到的內容中有所收獲。

 

責任編輯:迎迎 來源: 中國IT實驗室
相關推薦

2011-05-17 14:46:38

Oracle數據庫故障

2011-04-13 09:19:05

Oracle數據庫系統(tǒng)性能

2011-02-28 17:12:20

Oracle數據庫

2010-05-04 17:08:24

Oracle數據庫

2010-04-12 14:55:26

Oracle數據庫

2011-04-13 15:17:09

數據庫系統(tǒng)設計

2010-04-07 13:32:39

Oracle調優(yōu)

2011-07-08 16:02:54

HBase

2011-05-20 14:23:01

Oracle調優(yōu)

2011-04-18 13:46:24

數據庫設計

2010-04-22 11:34:21

Oracle數據庫

2023-11-10 09:25:36

Oracle數據庫

2010-03-10 11:29:47

MySQL數據庫性能調

2010-04-14 08:49:43

Oracle數據庫系統(tǒng)

2011-04-13 15:25:12

數據庫系統(tǒng)設計

2011-04-13 15:07:30

數據庫系統(tǒng)設計

2010-04-15 16:16:57

Oracle數據庫應用

2025-08-13 07:31:18

2011-04-18 13:12:01

數據庫索引

2011-04-18 13:36:32

數據庫游標
點贊
收藏

51CTO技術棧公眾號