首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle SGA 記憶體分配公式與 Solaris 核心參數調優

     編輯:Oracle 資料庫基礎

SGA 計算公式

版本公式
Oracle 8.0.xSGA = (db_block_buffers * block_size) + (shared_pool_size + large_pool_size + log_buffers) + 1MB
Oracle 8.1.xSGA = (db_block_buffers * block_size) + (shared_pool_size + large_pool_size + java_pool_size + log_buffers) + 1MB

理論建議 SGA 佔作業系統物理記憶體 1/2 ~ 1/3,視負載調整。

Solaris /etc/system 核心參數對照

參數預設/安裝值建議調整值含義
shmsys:shminfo_shmmax42949672954294967295單一共享記憶體段上限,建議 ≥ 最大 SGA
shmsys:shminfo_shmmin11最小共享記憶體段
shmsys:shminfo_shmmni100315共享記憶體標識符數量
shmsys:shminfo_shmseg1510單一進程可連接最大段數
shmsys:shminfo_shmall-> SGA系統總共享記憶體頁數上限
semsys:seminfo_semmns200630信號量總數,與 PROCESSES 參數相關
semsys:seminfo_semmni70315信號量集合數量
semsys:seminfo_semmsl-300單一信號量集合最大信號量數
semsys:seminfo_semopm-315單次 semop 最大操作數
semsys:seminfo_semvmx-32767信號量最大值
ulimit3000000-使用者程序資源限制

關鍵參數關聯說明

  • shmmax:必須大於等於目標 SGA 大小,否則實例無法啟動。
  • semmns:約 = PROCESSES * 1.1 + 10,支援足夠的並發連線。
  • semmsl:≥ PROCESSES,確保單一信號量集合容納所有進程。
  • 修改 /etc/system 後需重啟作業系統生效。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved