實體記憶體充足卻無法增加SGA

hooca發表於2016-01-14
客戶一Linux伺服器,實體記憶體32G,為SGA僅分配1.5G,在增加SGA到20G時,無法正常啟動,報錯如下。


點選(此處)摺疊或開啟

  1. SQL> startup

  2. ORA-27102: out of memory
  3. Linux-x86_64 Error: 28: No space left on device
之前修改的是SGA_TARGET和SGA_MAX_SIZE引數,寫入了spfile。先按如下方法恢復原引數,以讓Oracle正常啟動。
http://blog.itpub.net/22621861/viewspace-1316205/

原因是sysctl引數shmall過小,原引數為

點選(此處)摺疊或開啟

  1. kernel.shmall = 2097152
該引數值表明記憶體頁數,預設1頁大小為4K。

只要增大該引數,SGA就可以正常增加了。


點選(此處)摺疊或開啟

  1. vi /etc/sysctl.conf

  2.     kernel.shmall = 16777216

  3. sysctl -p
配置spfile引數部分略過。




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22621861/viewspace-1976608/,如需轉載,請註明出處,否則將追究法律責任。

相關文章