安装Oracle 11gR2数据库,安装过程中报错:
[INS-35172] Target database memory (778MB)exceeds the systems available shared memory ({0}MB).
经过测试,目前系统最大能通过的内存是:632M. 如下图:
影响这个最大值,即632M是我们的tmpfs 文件的大小。 这个问题和我之前的blog原因类似:
Oracle11gR2 RAC ORA-00845 MEMORY_TARGET not supported on this system 解决方法
MOS上的文档[ID 460506.1] 有说明。
You are tryingto use the MEMORY_TARGET feature. This feature requires the /dev/shm filesystem to be mounted for at Least bytes.The /dev/shm is either notmounted or is mounted With available space less than this size.
[root@gg2 ~]# df -h /dev/shm
Filesystem Size Used Avail Use% Mounted on
tmpfs 636M 0 636M 0% /dev/shm
这个文件的大小才是真正控制我们 AMM 的大小关键。找到了原因就好处理了。修改tmpfs 的大小,使其大于MEMORY_TARGET的大小就可以了。
# umount tmpfs
# mount -t tmpfs shmfs -o size=3G /dev/shm
让以后每次重启OS 都自动mount,修改文件 /etc/fstab 将tmpfs 修改成以下值:
tmpfs /dev/shm tmpfs defaults,size=3G 0 0
如果直接修改/etc/fstab,,通过重启OS 也可以让参数生效。
注意:这个size 的大小需要设置为整数。
[root@gg2 ~]# df -lh /dev/shm
Filesystem Size Used Avail Use% Mounted on
shmfs 3.0G 0 3.0G 0% /dev/shm
修改之后就可以顺利通过安装了。