_ksmg_granule_size oracle記憶體分配粒度
_ksmg_granule_size:
記憶體分配粒度大小
oracle記憶體分配的最小單位,最終分配的記憶體數量都是這個引數的整數倍
10g中這個引數的大小一般遵循如下原則:
– sga_max_size < = 1024M then _ksmg_granule_size = 4M
- sga_max_size > 1024M then _ksmg_granule_size = 16M
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
sga_max_size big integer 164M
sga_target big integer 0
SQL> select x.ksppinm name,y.ksppstvl value,x.ksppdesc descbtion
2 from x$ksppi x,x$ksppcv y
3 where x.inst_id=userenv('Instance')
4 and y.inst_id=userenv('Instance')
5 and x.indx=y.indx
6 and x.ksppinm like '%_ksmg_granule%';
rows will be truncated
NAME VALUE
-------------------------------- --------------------------
_ksmg_granule_size 4194304
SQL> show parameter sga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
lock_sga boolean FALSE
pre_page_sga boolean FALSE
sga_max_size big integer 18000M
sga_target big integer 18000M
SQL> select x.ksppinm name,y.ksppstvl value,x.ksppdesc descbtion
2 from x$ksppi x,x$ksppcv y
3 where x.inst_id=userenv('Instance')
4 and y.inst_id=userenv('Instance')
5 and x.indx=y.indx
6 and x.ksppinm like '%_ksmg_granule%';
NAME VALUE
------------------------------
_ksmg_granule_size 16777216
----------------------------------
這個引數調整並不是任意的,還受到sga總量的限制,如果sga不夠,即使調整引數也不會生效,只能調整到系統能夠認到的最大值
SQL> alter system set "_ksmg_granule_size"=16777216 scope=spfile;
System altered.
SQL>
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 176160768 bytes
Fixed Size 787588 bytes
Variable Size 149683068 bytes
Database Buffers 25165824 bytes
Redo Buffers 524288 bytes
Database mounted.
Database opened.
SQL> select x.ksppinm name,y.ksppstvl value,x.ksppdesc descbtion
2 from x$ksppi x,x$ksppcv y
3 where x.inst_id=userenv('Instance')
4 and y.inst_id=userenv('Instance')
5 and x.indx=y.indx
6 and x.ksppinm like '%_ksmg_granule%';
rows will be truncated
NAME VALUE
-------------------------------------------------------------------------------- --------------------------
_ksmg_granule_size 8388608
因為本地記憶體太小,並沒有調整到16m,而是8m
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13177610/viewspace-682663/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle記憶體分配與調整Oracle記憶體
- Oracle的記憶體分配和使用Oracle記憶體
- Oracle記憶體分配與使用(zt)Oracle記憶體
- oracle9i 的記憶體分配Oracle記憶體
- Oracle記憶體分配經驗法則Oracle記憶體
- JavaScript記憶體分配JavaScript記憶體
- JVM記憶體分配JVM記憶體
- java記憶體分配Java記憶體
- 垃圾收集器與記憶體分配策略_記憶體分配策略記憶體
- oracle 記憶體分配和調優 總結Oracle記憶體
- Oracle的記憶體的分配、回收[final]Oracle記憶體
- JVM 記憶體模型 記憶體分配,JVM鎖JVM記憶體模型
- 探索iOS記憶體分配iOS記憶體
- Java 記憶體分配策略Java記憶體
- java jvm 記憶體分配JavaJVM記憶體
- [C++]記憶體分配C++記憶體
- 動態記憶體分配記憶體
- oracle資料庫記憶體分配(sga和pga)Oracle資料庫記憶體
- 【SGA】【PGA】普適的Oracle記憶體分配策略Oracle記憶體
- java基礎-記憶體分配Java記憶體
- C語言-記憶體分配C語言記憶體
- java-方法記憶體分配Java記憶體
- go記憶體分配器Go記憶體
- Java 堆疊記憶體分配Java記憶體
- 記憶體分配策略學習記憶體
- 記憶體分配的確定記憶體
- weblogic的記憶體分配Web記憶體
- 記憶體分配方式 (轉)記憶體
- 記憶體的分配與釋放,記憶體洩漏記憶體
- C語言-記憶體管理之一[記憶體分配]C語言記憶體
- 簡單理解動態記憶體分配和靜態記憶體分配的區別記憶體
- linux記憶體管理(一)實體記憶體的組織和記憶體分配Linux記憶體
- hadoop 記憶體分配規則Hadoop記憶體
- mimalloc記憶體分配程式碼分析記憶體
- C語言的記憶體分配C語言記憶體
- 深度理解glibc記憶體分配記憶體
- 記憶體分配問題處理記憶體
- 物件的建立與記憶體分配物件記憶體