標籤:size data- 設定 sys ted echo cat getconf lin
****************************************************************************原文:blog.csdn.net/clark_xu 徐長亮的專欄************************************************************************
問題描寫敘述:
原先SGA 4G。PGA 2G。
alter system set sga_max_size=30G scope=spfile;
alter system set sga_target=30G scope=spfile;
之後,
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
再次啟動
SQL> startup
ORA-27102: out of memory
Linux-ia64 Error: 28: No space left on device
解決方案:
(1)linux下 getconf PAGE_SIZE
16384=8K
表示虛擬記憶體的一個頁面大小為8K
(2)查看cat /proc/sys/kernel/shmall
524288
表示同意共用的記憶體頁最大能夠是 524288個頁面。
(3)算出能夠共用的頁面為:
524288*(16384/1024)/1024/1024=8G
之前設定SGA+PGA=6G < 8G 所以沒有報錯。改動sga=30G之後。啟動執行個體才報ORA-27102: out of memory
Linux-ia64 Error: 28: No space left on device
(4)改動可共用記憶體為128G
128*1024*1024/8K=8388608
在linux下:echo "8388608" > /proc/sys/kernel/shmall
(5)再次startup,執行個體能夠啟動了
【ORACLE】ORA-27102: out of memory報錯的處理