認識Oracle資料庫System Global Area (SGA)

來源:互聯網
上載者:User

 1 概述

  Oracle SGA區的監控和管理,是資料庫日常維護的重要內容。本文詳細介紹SGA的基本概念,SGA運行情況檢查,以及SGA的參數設定原則,希望對大家的有所協助。

  2 SGA的基本概念

  當啟動Oracle資料庫時,系統會先在記憶體內規劃一個固定地區,用來儲存使用者需要的資料,以及Oracle運行時必備的系統資訊。我們稱此地區為系統全域區(System Global Area),簡稱SGA。

  SGA 包含數個重要地區,分別是:

  ■ Database Buffer Cache (資料庫緩衝區)

  ■ Redo Log Buffer (重做日誌緩衝區)

  ■ Shared Pool (共用區)

  ■ 其它,如Java pool, Large pool

  2.1 Database Buffer Cache (資料庫緩衝區)

  資料庫緩衝區的作用主要是在記憶體中緩衝從資料庫中讀取的資料區塊。資料庫緩衝區越大,為使用者已經在記憶體裡的共用資料提供的記憶體就越大,這樣可以減少所需要的磁碟物理讀。

  在9i以前資料庫緩衝區的大小是由db_block_buffers*db_block_size 來決定大小的。db_block_size參數是在建立資料庫時設定的,OLTP系統的db_block_size一般設定為8k。

  在9i中,資料庫緩衝區的大小由db_cache_size決定,8i中的db_block_buffers被取消。db_cache_size的單位是位元組,它直接決定了資料庫緩衝區的大小,而不再是塊的數量。

  2.2 Shared Pool (共用區)

  共用區由三部分組成,分別是Dictionary cache(包括資料字典的定義,如表結構、許可權等),Library cache(包括共用的sql遊標,sql原代碼以及執行計畫、預存程序和會話資訊)和Control structure。它的大小由初始化參數shared_pool_size控制,它的作用是緩衝已經被解析過的SQL,使其能被重用,不用再解析。SQL的解析非常消耗CPU的資源,如果一條SQL在Shared pool中已經存在,則進行的僅是軟解析(在Shared pool中尋找相同SQL),這將大大提高資料庫的運行效率。當然,這部分記憶體也並非越大越好,太大的Shared pool,oracle為了維護共用結構,將付出更大的管理開銷。建議在150M-500M之間。如果系統記憶體為1G,該值可設為150M-200M;如果為2G,該值設為250M-300M;每增加1G記憶體,該值增加100M;但該值最大不應超過500M。

  2.3 Redo Log Buffer (重做日誌緩衝區)

  Log_buffer是重做日誌緩衝區,對資料庫的任何修改都按順序被記錄在該緩衝,然後由LGWR 進程將它寫入磁碟。LGWR的寫入條件是:使用者提交、有1/3 重做日誌緩衝區未被寫入磁碟、有大於1M 重做日誌緩衝區未被寫入磁碟、逾時、DBWR需要寫入的資料的SCN 號大於LGWR 記錄的SCN 號,DBWR 觸發LGWR寫入。

  從中可以看出,大於1M的log buffer值意義並不大。重做日誌緩衝區的大小由初始化參數log_buffer設定。

  • 1
  • 2
  • 3
  • 4
  • 下一頁

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.