oracle使用記憶體的錯誤,ORA-27102: out of memory

it_newbalance發表於2011-05-06

網上參閱資料,整理到這裡,以備查閱。

主要由於記憶體的分配問題,導致oracle資料庫啟動失敗。


資料庫關閉之後重新啟動,出現下面的錯誤:

SQL> startup;
ORA-27102: out of memory
Linux-x86_64 Error: 28: No space left on device
SQL> startup;
ORA-27102: out of memory
Linux-x86_64 Error: 28: No space left on device

Cause

shmall is the total amount of shared memory, in pages, that the system can use at one time.

Solution

Set shmall equal to the sum of all the SGAs on the system, divided by the page size. 

The page size can be determined using the following command: 

做了如下操作,可正常啟動:

vi  /etc/sysctl.conf
kernel.shmall = 2097152
kernel.shmall = 4194304(4×1024×1024)

kernel.core_uses_pid = 1
#kernel.shmall = 2097152
kernel.shmall = 4194304
kernel.shmmax = 5368709120
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128

then run the following command:

# sysctl -p


net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
kernel.shmall = 4194304
kernel.shmmax = 5368709120
kernel.shmmni = 4096
kernel.sem = 250 32000 100 12

# cat /proc/sys/kernel/shmall
4194304


參考網文:

http://yuekczy.spaces.live.com/blog/cns!139B3FC812B094AB!397.entry

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

相關文章