久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

認(rèn)識Oracle數(shù)據(jù)庫System Global Area (SGA)-入門基礎(chǔ)

 krrish 2010-07-27

1 概述

  Oracle SGA區(qū)的監(jiān)控和管理,,是數(shù)據(jù)庫日常維護(hù)的重要內(nèi)容。本文詳細(xì)介紹SGA的基本概念,,SGA運行情況檢查,,以及SGA的參數(shù)設(shè)置原則,希望對大家的有所幫助,。

  2 SGA的基本概念

  當(dāng)啟動Oracle數(shù)據(jù)庫時,,系統(tǒng)會先在內(nèi)存內(nèi)規(guī)劃一個固定區(qū)域,用來儲存用戶需要的數(shù)據(jù),,以及Oracle運行時必備的系統(tǒng)信息,。我們稱此區(qū)域為系統(tǒng)全局區(qū)(System Global Area),簡稱SGA,。

  SGA 包含數(shù)個重要區(qū)域,,分別是:

  ■ Database Buffer Cache (數(shù)據(jù)庫緩沖區(qū))

  ■ Redo Log Buffer (重做日志緩沖區(qū))

  ■ Shared Pool (共享區(qū))

  ■ 其它,如Java pool,, Large pool

  2.1 Database Buffer Cache (數(shù)據(jù)庫緩沖區(qū))

  數(shù)據(jù)庫緩沖區(qū)的作用主要是在內(nèi)存中緩存從數(shù)據(jù)庫中讀取的數(shù)據(jù)塊,。數(shù)據(jù)庫緩沖區(qū)越大,為用戶已經(jīng)在內(nèi)存里的共享數(shù)據(jù)提供的內(nèi)存就越大,,這樣可以減少所需要的磁盤物理讀,。

  在9i以前數(shù)據(jù)庫緩沖區(qū)的大小是由db_block_buffers*db_block_size 來決定大小的,。db_block_size參數(shù)是在創(chuàng)建數(shù)據(jù)庫時設(shè)置的,,OLTP系統(tǒng)的db_block_size一般設(shè)置為8k。

  在9i中,,數(shù)據(jù)庫緩沖區(qū)的大小由db_cache_size決定,,8i中的db_block_buffers被取消。db_cache_size的單位是字節(jié),,它直接決定了數(shù)據(jù)庫緩沖區(qū)的大小,,而不再是塊的數(shù)量。

  2.2 Shared Pool (共享區(qū))

  共享區(qū)由三部分組成,,分別是Dictionary cache(包括數(shù)據(jù)字典的定義,,如表結(jié)構(gòu),、權(quán)限等),Library cache(包括共享的sql游標(biāo),,sql原代碼以及執(zhí)行計劃,、存儲過程和會話信息)和Control structure。它的大小由初始化參數(shù)shared_pool_size控制,,它的作用是緩存已經(jīng)被解析過的SQL,,使其能被重用,不用再解析,。SQL的解析非常消耗CPU的資源,,如果一條SQL在Shared pool中已經(jīng)存在,則進(jìn)行的僅是軟解析(在Shared pool中尋找相同SQL),,這將大大提高數(shù)據(jù)庫的運行效率,。當(dāng)然,這部分內(nèi)存也并非越大越好,,太大的Shared pool,,oracle為了維護(hù)共享結(jié)構(gòu),將付出更大的管理開銷,。建議在150M-500M之間,。如果系統(tǒng)內(nèi)存為1G,該值可設(shè)為150M-200M;如果為2G,,該值設(shè)為250M-300M;每增加1G內(nèi)存,,該值增加100M;但該值最大不應(yīng)超過500M。

  2.3 Redo Log Buffer (重做日志緩沖區(qū))

  Log_buffer是重做日志緩沖區(qū),,對數(shù)據(jù)庫的任何修改都按順序被記錄在該緩沖,,然后由LGWR 進(jìn)程將它寫入磁盤。LGWR的寫入條件是:用戶提交,、有1/3 重做日志緩沖區(qū)未被寫入磁盤,、有大于1M 重做日志緩沖區(qū)未被寫入磁盤、超時,、DBWR需要寫入的數(shù)據(jù)的SCN 號大于LGWR 記錄的SCN 號,,DBWR 觸發(fā)LGWR寫入。

  從中可以看出,,大于1M的log buffer值意義并不大,。重做日志緩沖區(qū)的大小由初始化參數(shù)log_buffer設(shè)定。

 

文章轉(zhuǎn)載自網(wǎng)管網(wǎng):http://www./pdb/oracle/200904/160360.html

 
2.4 Large pool和Java pool
  Large pool:用于MTS,、并行查詢和RMAN,。如果使用了MTS或RMAN,large_pool特別有用,,它可以降低用戶對share pool的爭用,。
  如果應(yīng)用系統(tǒng)不使用MTS,,也不使用RMAN,large_pool_size的大小可設(shè)為1M,。
  Java pool:Oracle8I以后,,oracle數(shù)據(jù)庫內(nèi)置了對java的支持,如果數(shù)據(jù)庫安裝時選擇了JServer組件,,則這個值可以設(shè)置為20M-30M之間,。可以查詢v$option動態(tài)視圖,,如果java那一項值為true,,則表示安裝了JServer,為false,,表示未安裝,。
  如果應(yīng)用系統(tǒng)不使用PORTAL,APPS,,也不使用RMAN,,Java pool值的大小可設(shè)為1M。如果系統(tǒng)需要安裝補(bǔ)丁,,建議先把Java pool值的大小臨時增加到50-150M,。
  3 SGA運行情況檢查
  3.1 SGA整體檢查
  對于SGA部分,我們通過sqlplus查詢:
        SQL> show sga
  Total System Global Area 316899848 bytes
  Fixed Size 741896 bytes
  Variable Size 150994944 bytes
  Database Buffers 163840000 bytes
  Redo Buffers 1323008 bytes
 
  或者
        SQL> select * from v$sga;
  NAME VALUE
  -------------------- ----------
  Fixed Size 741896
  Variable Size 150994944
  Database Buffers 163840000
  Redo Buffers 1323008
 
  Show sga的結(jié)果和SGA的初始化參數(shù)配置并不是完全一一對應(yīng)的,,下面是每一個部分的具體解釋:
  Fixed Size
  oracle 的不同平臺和不同版本下可能不一樣,,但對于確定環(huán)境是一個固定的值,里面存儲了SGA各部分組件的信息,,可以看作引導(dǎo)建立SGA的區(qū)域,。
  Variable Size
  包含了shared_pool_size、java_pool_size,、large_pool_size等內(nèi)存設(shè)置和用于管理數(shù)據(jù)緩沖區(qū)等內(nèi)存結(jié)構(gòu)的hash table,、塊頭信息等。
 
文章轉(zhuǎn)載自網(wǎng)管網(wǎng):http://www./pdb/oracle/200904/160360_2.html
 
Database Buffers
  指數(shù)據(jù)緩沖區(qū),,在8i中包含default pool,、buffer_pool_keep、buffer_pool_recycle三部分內(nèi)存,。在9i中包含db_cache_size,、db_keep_cache_size,、db_recycle_cache_size,、db_nk_cache_size。這里要注意在8i中三部分內(nèi)存總和為db_block_buffers*db_block_size,。
  Redo Buffers
  指重做日志緩沖區(qū)的實際大小,,和log_buffer的值可能稍有不同,。
  3.2 Data buffer 命中率檢查
  檢查語句:
        SQL>select 1 - (phy.value / (cur.value + con.value)) "HIT RATIO"
  from v$sysstat cur, v$sysstat con,, v$sysstat phy where cur.name = 'db block gets'
  and con.name = 'consistent gets'
  and phy.name = 'physical reads';
 
  調(diào)整原則:
  命中率不應(yīng)該低于90%.
  如果該值過低,,應(yīng)該調(diào)高初始化參數(shù)。8i調(diào)整db_block_buffer,,9i調(diào)整db_cache_size,。
  3.3 Dictionary cache命中率檢查
  檢查語句:
        SQL>SELECT 1 - (SUM(getmisses)/SUM(gets)) "Data Dictionary Hit Ratio" FROM v$rowcache;
  調(diào)整原則:
  命中率不應(yīng)該低于95%.
  如果該值過低,應(yīng)調(diào)高shared_pool_size的大小,。
  3.4 Library cache命中率檢查
  檢查語句:
        SQL>SELECT 1-(SUM(reloads)/SUM(pins)) "Library cache Hit Ratio" FROM v$librarycache;
  調(diào)整原則:
  命中率不應(yīng)該低于99%.
  如果該值過低,,應(yīng)調(diào)高shared_pool_size的大小。
3.5 Log buffer命中率檢查

  檢查語句:

  

     SQL>select (req.value*5000)/entries.value "Ratio"

  from v$sysstat req,, v$sysstat entries

  where req.name = 'redo log space requests'

  and entries.name = 'redo entries';

  調(diào)整原則:

  命中率不應(yīng)該高于1.

  如果該值過高,,應(yīng)調(diào)高log_buffer的大小。

  4 SGA 的參數(shù)設(shè)置原則

  在 Oracle8i 時,,SGA 的大小是由初始化參數(shù)文件內(nèi)的某些參數(shù)所設(shè)定,,最麻煩的是每次調(diào)整參數(shù)之后必須等重新激活數(shù)據(jù)庫才生效。從Oracle9i 開始,,DBA 可以動態(tài)配置內(nèi)存的大小;這樣的技術(shù)我們稱為「dynamicSGA」,。有了dynamic SGA ,SGA的各組成區(qū)域都可以動態(tài)地進(jìn)行規(guī)劃與調(diào)整,,而不需先關(guān)閉數(shù)據(jù)庫,。

  在Oracle9i中,SGA_MAX_SIZE可設(shè)定 SGA 所占用的最大內(nèi)存空間,。需要注意的是:SGA_MAX_SIZE 盡量不要超過物理內(nèi)存大小,,否則將會使用到硬盤上的虛擬內(nèi)存,反而導(dǎo)致性能低下,。如果 SGA_MAX_SIZE 之設(shè)定值小于其它 SGA 相關(guān)參數(shù)設(shè)定值的總和,,或是小于各相關(guān)參數(shù)默認(rèn)值的總和,則 SGA_MAX_SIZE 之設(shè)定值無效,。

  在SGA的基本概念部分,,已經(jīng)介紹了各個部分大小設(shè)置的原則,這里再用一句話來總結(jié):

  1)數(shù)據(jù)庫緩沖區(qū)建議占物理內(nèi)存的20%-30%,。物理內(nèi)存在1G以內(nèi),,可以占20%,1G-2G之間可占25%,,物理內(nèi)存在2G以上,,可以占30%,甚至更高,。

  2)共享區(qū)建議在150M-500M之間,。如果系統(tǒng)內(nèi)存為1G,,該值可設(shè)為150M-200M;如果為2G,該值設(shè)為250M-300M;每增加1G內(nèi)存,,該值增加100M;但該值最大不應(yīng)超過500M,。

  3)重做日志緩沖區(qū)建議設(shè)為1M。

  4)如果應(yīng)用系統(tǒng)不使用MTS,,也不使用RMAN,,Large pool的大小可設(shè)為1M。否則設(shè)為16M,。

  5)如果應(yīng)用系統(tǒng)不使用RMAN,,Java pool值的大小可設(shè)為1M。否則設(shè)為50M,。如果系統(tǒng)需要安裝補(bǔ)丁,,建議先把Java pool值的大小臨時增加到50-150M。

  調(diào)整完上述參數(shù)后,,一定要計算SGA的尺寸,,總原則是SGA的尺寸應(yīng)小于物理內(nèi)存的一半。SGA的計算方法如下:SGA=DB_BLOCK_BUFFERS*DB_BLOCK_SIZE+SHARED_POOL_SIZE+LOG_BUFFER,。同時還要保證(SGA+sort_area_size*sesson數(shù)量)不大于物理內(nèi)存的70%,。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多