oracle11g数据库,修改了内存参数memory_max_target=943718400,关闭数据库重新启动的时候报错
[oracle@instuctor shm]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Mon Nov 19 09:34:112012
Copyright (c) 1982, 2011, Oracle.
Connected to an idle instance.
SQL> startup
ORA-00845: MEMORY_TARGET not supported on this system
SQL> exit
Disconnected
[oracle@instuctor shm]$ oerr ora 00845
00845, 00000, "MEMORY_TARGET not supported on this system"
// *Cause: The MEMORY_TARGET parameter was not supported on thisoperating system or /dev/shm was not sized correctly onLinux.
// *Action: Refer to documentation for a list of supportedoperating systems. Or, size /dev/shm to be at least theSGA_MAX_SIZE on each
Oracle instance running on the system.
查看数据库的警告日志,同样看到了类似的报错信息
Mon Nov 19 09:34:14 2012
Starting ORACLE instance (normal)
WARNING: You are trying to use the MEMORY_TARGET feature. Thisfeature requires the /dev/shm file system to be mounted for atleast 943718400
bytes. /dev/shm is either not mounted or is mounted withavailable space less than this size. Please fix this so thatMEMORY_TARGET can work
as expected. Current available is 845021184 and used is208900096 bytes. Ensure that the mount point is /dev/shm for thisdirectory.
memory_target needs larger /dev/shm
通过以上原因的分析,看来是/dev/shm剩余的空间太小了
[oracle@instuctor shm]$ df -H
Filesystem
/dev/sda1
tmpfs
[oracle@instuctor shm]$
Oracle在metalink的文档:Doc ID:Note:460506.1中进行了说明。
解决这个问题只有两个方法,
1.修改初始化参数,使得初始化参数中SGA的设置小于/dev/shm的大小
2.调整/dev/shm的大小。
修改/dev/shm的大小可以通过修改/etc/fstab来实现:
[root@instuctor ~]# vi /etc/fstab
LABEL=/
tmpfs
devpts
sysfs
proc
LABEL=SWAP-sda2
~
~
[root@instuctor ~]# mount -o remount /dev/shm
[root@instuctor ~]# df -H
Filesystem
/dev/sda1
tmpfs
扩大/dev/shm后,再次尝试启动数据库,没有问题。
[oracle@instuctor ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Mon Nov 19 10:02:332012
Copyright (c) 1982, 2011, Oracle.
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area
FixedSize
VariableSize
DatabaseBuffers
RedoBuffers
Database mounted.
Database opened.