設定SGA的大小並試著啟動Oracle DB。
Oracle DB的版本是11g x64,OS的帳號是visora
首先查看initVIS.ora中關於SGA的設定
-bash-3.2$ cat initVIS.ora |grep sga
# sizing recommendations for sga_target.
# values when sga_target is being used. The Automatic
# SGA tuning option (sga_target) dynamically sizes the
sga_target = 8G
以root權限限制visora的使用記憶體大小,把值增加到/etc/project
# projadd -U visora -K "project.max-shm-memory=(priv,12G,deny)" user.visora
如果要更改說定的話,依下列的語法:
# projmod -s -K "project.max-shm-memory=(priv,512MB,deny)" user.visora
我們先將max-shm-memory設定為512MB,接著以visora來啟動DB
SQL> startup mount pfile=?/dbs/initVIS.ora
ORA-27102: out of memory
SVR4 Error: 22: Invalid argument
我們先將max-shm-memory設定為12G,接著以visora來啟動DB
SQL> startup mount pfile=?/dbs/initVIS.ora
ORACLE instance started.
Total System Global Area 8554127360 bytes
Fixed Size 2110360 bytes
Variable Size 1830210664 bytes
Database Buffers 6710886400 bytes
Redo Buffers 10919936 bytes
Database mounted.
這是我自己的測試結果。