熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

數據庫內存參數調優技術的總結

2013-11-13 12:45:03  來源: Oracle 

  近來公司技術研發都在問我關於內存參數如何設置可以優化Oracle的性能所以抽時間整理了這篇文檔以做參考

  目的:

  希望通過整理此文檔使公司同事對oracle內存結構有一個全面的了解並在實際的工作中靈活應用使oracle的內存性能達到最優配置提升應用程序反應速度並進行合理的內存使用

  實例結構

  oracle實例=內存結構+進程結構

  oracle實例啟動的過程其實就是oracle內存參數設置的值加載到內存中並啟動相應的後台進程進行相關的服務過程

  進程結構

  oracle進程=服務器進程+用戶進程

  幾個重要的後台進程

  DBWR數據寫入進程

  LGWR:日志寫入進程

  ARCH:歸檔進程

  CKPT:檢查點進程(日志切換上一個檢查點之後又超過了指定的時間預定義的日志塊寫入磁盤例程關閉DBA強制產生表空間offline)

  LCKn(封鎖進程

  Dnnn:調度進程

  內存結構(我們重點講解的)

  內存結構=SGA(系統全局區)+PGA(程序全局區)

  SGA就是我們所說的內存調優的主要對象我們重點就是設置SGA

  原則SGA+PGA+OS使用內存<總物理RAM

  SGA系統全局區(包括以下五個區)

  A數據緩沖區:(db_block_buffers)存儲由磁盤數據文件讀入的數據

  大小: db_block_buffers*db_block_size

  Oraclei設置數據緩沖區為Db_cache_size

  原則SGA中主要設置對象一般為可用內存%

  B共享池:(shared_pool_size):數據字典sql緩沖pl/sql語法分析加大可提速度

  原則SGA中主要設置對象一般為可用內存%

  C日志緩沖區:(log_buffer)存儲數據庫的修改信息

  原則K M 之間不應該太大

  D JAVA池(Java_pool_size)主要用於JAVA語言的開發

  原則若不使用java原則上不能小於MM通常就夠了

  E 大池(Large_pool_size) 如果不設置MTS主要用於數據庫備份恢復管理器RMAN

  原則若不使用MTS M 之間不應該太大

  SGA= db_block_buffers*db_block_size+ shared_pool_size+ log_buffer+Java_pool+size+large_pool_size

  原則 達到可用內存的%就可以了

  PGA程序全局區

  ASort_area_size 用於排序所占內存

  BHash_area_size 用於散列聯接位圖索引

  

  

  這兩個參數在非MTS下都是屬於PGA 不屬於SGA是為每個session單獨分配的在我們的服務器上除了OS + SGA一定要考慮這兩部分

  原則OS 使用內存+ SGA + session*(sort_area_size + hash_area_size + M) < 總物理RAM 為好

  實例配置

  基本掌握的原則是 db_block_buffer 通常可以盡可能的大shared_pool_size 要適度log_buffer 通常大到幾百K到M就差不多了

  A如果M RAM

  建議 shared_pool_size = M db_block_buffer* db_block_size = M

  

  B如果G RAM

  建議 shared_pool_size = M db_block_buffer* db_block_size = M

  

  C如果G

  建議 shared_pool_size = M db_block_buffer *db_block_size = M

  參數更改方式

  oraclei

  主要都是通過修改Oracle啟動參數文件進行相關的配置

  參數文件位置

  d:\oracle\admin\DB_Name\pfile\initora

  按以上修改以上參數值即可

  Oraclei:

  兩種方式第一種是修改Oracle啟動參數文件後通過此參數文件再創建服務器參數文件

  第二種是直接運行oracle修改命令進行修改

  SQL>alter system set db_cache_size=M scope=spfile;

  SQL>alter system set shared_pool_size=M scope=spfile;


From:http://tw.wingwit.com/Article/program/Oracle/201311/16514.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.