MEMORY_TARGET 与 操作系统/dev/shm的大小

故障:ORA-00845: MEMORY_TARGET not supported on this system

Oracle 11g的Linux版本在修改了MEMORY_TARGET或者SGA_TARGET后启动可能会报错:

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system

这个问题是由于设置SGA的大小超过了操作系统/dev/shm的大小:

[root@enterprice64 ~]# df -k /dev/shm
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 4089416 0 4089416 0% /dev/shm

Oracle在metalink的文档:Doc ID:Note:460506.1中进行了说明。解决这个问题只有两个方法,一种是修改初始化参数,使得初始化参数中SGA的设置小于/dev/shm的大小,另一种方法就是调整/dev/shm的大小。

修改/dev/shm的大小可以通过修改/etc/fstab来实现:

[root@db2  ~]# df  -h  /dev/shm    //查看/dev/shm大小

tmpfs                 1.0G  500M  500M 50%  /dev/shm
[root@db2 ~]#vi /etc/fstab      //更换/dev/shm默认大小为2G

LABEL=/                 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
#tmpfs                   /dev/shm               tmpfs   defaults        0 0
tmpfs                   /dev/shm     tmpfs   defaults,size=2048M  0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=SWAP-hda3         swap                    swap    defaults        0 0

//注:本行defaults,size=10240M 中间无空格
[root@db2 ~]#
[root@db2 ~]# umount /dev/shm
[root@db2  ~]# mount /dev/shm
[root@db2  ~]# df  -h

/dev/hda2             8.2G  4.1G  3.8G  53% /
/dev/hda1              92M   12M   75M  14% /boot
tmpfs                 2.0G  240M  1.8G  12% /dev/shm
/dev/sda              7.9G  7.5G   39M 100% /array
修改/etc/fstab,重新mount /dev/shm,然后就可以启动数据库了。
[oracle@db2 ~]$ sqlplus "/as sysdba"

SQL*Plus: Release 11.2.0.1.0 Production on Sat Jan 21 13:26:28 2012

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup

ORACLE instance started.

Total System Global Area 4743446528 bytes
Fixed Size 2143824 bytes
Variable Size 3892316592 bytes
Database Buffers 805306368 bytes
Redo Buffers 43679744 bytes
Database mounted.
Database opened

你可能感兴趣的:(target)