9i 下sga_max_size 和SGA中各記憶體分配項的關係
----------------------------------------------------------------
SGA_MAX_SIZE
Parameter type
Big integer
Syntax
SGA_MAX_SIZE = integer [K | M | G]
Default value
Initial size of SGA at startup, dependent on the sizes of different pools in the SGA, such as buffer cache, shared pool, large pool, and so on.
Parameter class
Static
Range of values
0 to operating system-dependent
----------------------------------------------------------------
sga_max_size 是 static 引數型別
一直比較模糊的一個概念: SGA所包含的幾個記憶體分配項( db buffer, share pool , large pool , java pool 等 ) 記憶體值發生變化導致整個SGA和發生變化時, sga_max_size 會不會自動變化 ( 根據定義應該是自動發生變化的,當startup時候 ) ?
產生這個疑問是源於看了一本performance tuning的書,上面寫道:如果整個SGA記憶體區大小加和是 300 M , 而sga_max_size 被設定為 500m , 那麼oracle仍然從空閒記憶體中要求 500 m 的記憶體 。也就是說Oracle 資料庫啟動時會向作業系統要求和sga_max_size 引數值相等的記憶體, 而不是去看SGA各項記憶體的加和 ( 這樣可能造成浪費 ) 。
今天測試發現 sga_max_size 是隨SGA中各記憶體分配項( db buffer, share pool , large pool , java pool 等 ) 的總和變化而變化的。當SGA各項變化導致總和發生變化, 那麼sga_max_size 在重新啟動db時就會自動根據變化的記憶體值總和改變自己的值 。
從上面分析可以得出,sga_max_size 其實是不需要手動調整的 ( 如果記憶體變更後允許startup的話 ) 。 應該不太可能出現上面提到的sga_max_size 被設定為 500m , 而SGA各項記憶體值加和才 300 m .
SGA_MAX_SIZE
Parameter type
Big integer
Syntax
SGA_MAX_SIZE = integer [K | M | G]
Default value
Initial size of SGA at startup, dependent on the sizes of different pools in the SGA, such as buffer cache, shared pool, large pool, and so on.
Parameter class
Static
Range of values
0 to operating system-dependent
----------------------------------------------------------------
sga_max_size 是 static 引數型別
一直比較模糊的一個概念: SGA所包含的幾個記憶體分配項( db buffer, share pool , large pool , java pool 等 ) 記憶體值發生變化導致整個SGA和發生變化時, sga_max_size 會不會自動變化 ( 根據定義應該是自動發生變化的,當startup時候 ) ?
產生這個疑問是源於看了一本performance tuning的書,上面寫道:如果整個SGA記憶體區大小加和是 300 M , 而sga_max_size 被設定為 500m , 那麼oracle仍然從空閒記憶體中要求 500 m 的記憶體 。也就是說Oracle 資料庫啟動時會向作業系統要求和sga_max_size 引數值相等的記憶體, 而不是去看SGA各項記憶體的加和 ( 這樣可能造成浪費 ) 。
今天測試發現 sga_max_size 是隨SGA中各記憶體分配項( db buffer, share pool , large pool , java pool 等 ) 的總和變化而變化的。當SGA各項變化導致總和發生變化, 那麼sga_max_size 在重新啟動db時就會自動根據變化的記憶體值總和改變自己的值 。
從上面分析可以得出,sga_max_size 其實是不需要手動調整的 ( 如果記憶體變更後允許startup的話 ) 。 應該不太可能出現上面提到的sga_max_size 被設定為 500m , 而SGA各項記憶體值加和才 300 m .
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-84453/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SGA中各池記憶體分配顆粒大小與SGA_TARGET引數的關係記憶體
- SGA與共享記憶體的關係記憶體
- 自動SGA共享記憶體管理,ASMM,MMAN,sga_target,sga_max_size記憶體ASM
- oracle資料庫記憶體分配(sga和pga)Oracle資料庫記憶體
- 【SGA】【PGA】普適的Oracle記憶體分配策略Oracle記憶體
- oracle例項記憶體(SGA和PGA)調整Oracle記憶體
- 9i出現記憶體分配錯誤記憶體
- SGA和PGA記憶體管理記憶體
- 記憶體_SGA記憶體
- C中的記憶體分配模型記憶體模型
- Oracle的記憶體分配和使用Oracle記憶體
- 堆疊和記憶體的關係 細說記憶體
- 轉:關於SGA_MAX_SIZE與SGA_TARGET的詳解
- 記憶體分配策略中,堆和棧的區別記憶體
- 簡單理解動態記憶體分配和靜態記憶體分配的區別記憶體
- 將SGA全部PIN到記憶體中記憶體
- Go記憶體分配和GC的理解Go記憶體GC
- sga_target與sga_max_size
- SGA_MAX_SIZE與SGA_TARGET
- linux記憶體管理(一)實體記憶體的組織和記憶體分配Linux記憶體
- Java關於繼承中的轉型及其記憶體分配Java繼承記憶體
- Netty 中的記憶體分配淺析Netty記憶體
- SGA與共享記憶體記憶體
- c和指標中關於動態分配記憶體malloc和qsort的一個例子指標記憶體
- 【轉】SGA_MAX_SIZE與SGA_TARGET
- 在繼承和多型中的記憶體分配機制繼承多型記憶體
- 關於c語言記憶體分配,malloc,free,和段錯誤,記憶體洩露C語言記憶體洩露
- JavaScript記憶體分配JavaScript記憶體
- JVM記憶體分配JVM記憶體
- java記憶體分配Java記憶體
- curl 中減少記憶體分配操作記憶體
- JAVA物件在JVM中記憶體分配Java物件JVM記憶體
- oracle 10g中的SGA_MAX_SIZE與SGA_TARGET引數Oracle 10g
- Java中記憶體中的Heap、Stack與程式執行的關係Java記憶體
- JVM垃圾回收和記憶體分配策略JVM記憶體
- 垃圾收集器與記憶體分配策略_記憶體分配策略記憶體
- 記憶體分配的確定記憶體
- weblogic的記憶體分配Web記憶體