oracle--數據庫擴容後出現ORA-27102

一,問題描述

Connected to an idle instance.
SQL> startup nomount
ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance
ORA-27102: out of memory
Linux-x86_64 Error: 28: No space left on device
SQL> !oerr ora 27102

二,解決思路

查看metalink(ID 301830.1),說是內核參數的配置不夠。
內核參數的值以下:
Last login: Sun Mar 30 22:42:16 2014 from xxxx
-bash-4.1$ cat /proc/sys/kernel/shmall
16383998
-bash-4.1$ cat /proc/sys/kernel/shmmax
67108855808

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. 

來作個演算,

shmall應該是shmmax/page_size=67108855808/4096=16383998,這個和當前的設置相等
可是同一個unix帳戶下有兩套環境,須要分配兩套sga。因此shmall就遠遠不夠了,須要同時修改shmmax,通常建議爲內存的90%左右。

調整後參數值以下:
-bash-4.1$ cat /proc/sys/kernel/shmall
33030178

-bash-4.1$ cat /proc/sys/kernel/shmmax
135291609088

而後須要sysctl給激活一下。

再重啓數據庫就沒有問題了。侵刪:https://cloud.tencent.com/developer/article/1059524
相關文章
相關標籤/搜索