现在的位置: 首页 > 综合 > 正文

[INS-35172] Target database memory (XXMB) exceeds the systems available shared memory ({0}MB) 解决方法 .

2013年10月02日 ⁄ 综合 ⁄ 共 1761字 ⁄ 字号 评论关闭

 

安装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 解决方法

http://blog.csdn.net/tianlesoftware/article/details/6013777

 

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 <size> 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

修改之后就可以顺利通过安装了。

 

 

 

问题解决:

有时会遇到/dev/shm 卸载不掉的情况

# umount /dev/shm

umount: /dev/shm: device is busy.

 

用fuser处理

# fuser -km /dev/shm

# umount /dev/shm

# mount /dev/shm

 

fuser命令

-k:kill processes accessing the named file(杀死所有正在访问指定文件的进程

)

-m 表示指定文件所在的文件系统或者块设备(处于 mount 状态)。所有访问该文件系统的进程都被列出。

 

 

-------------------------------------------------------------------------------------------------------

版权所有. 文章允许转载, 但必须以链接方式注明源地址,否则追究法律责任.

Blog: http://blog.csdn.net/tianlesoftware

Weibo: http://weibo.com/tianlesoftware

问题解决:

有时会遇到/dev/shm 卸载不掉的情况

# umount /dev/shm

umount: /dev/shm: device is busy.

 

用fuser处理

# fuser -km /dev/shm

# umount /dev/shm

# mount /dev/shm

 

fuser命令

-k:kill processes accessing the named file(杀死所有正在访问指定文件的进程

)

-m 表示指定文件所在的文件系统或者块设备(处于 mount 状态)。所有访问该文件系统的进程都被列出。

抱歉!评论已关闭.