欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle 11g ORA-00845 在Linux 下的解决方案

程序员文章站 2022-05-08 20:52:07
...

安装oracle或配置dataguard时,数据无法启动,错误信息ORA-00845: MEMORY_TARGET not supported on this system

环境:CentOS 6.2 + Oracle 11.2.0.3

问题描述:安装oracle或配置dataguard时,数据无法启动,错误信息ORA-00845: MEMORY_TARGET not supported on this system

这个错误的主要原因是tmpfs的值小于memory_target的值。

[root@dac-vm02 ~]#oerr ora 845

00845, 00000, "MEMORY_TARGET notsupported on this system"

// *Cause: The MEMORY_TARGET parameter wasnot supported on this operating system or /dev/shm was not sized correctly onLinux.

// *Action: Refer to documentation for alist of supported operating systems. Or, size /dev/shm to be at least theSGA_MAX_SIZE on each Oracle instance running on the system.

解决方案:

因此我们只需要将tmpfs的值改大一点就好了。

先来看一下memory_target的值是多大

SQL> show parameter memory_target

NAME TYPE VALUE
------------------------------------ -------------------------------- ------------------------------

memory_target big integer 1296M

SQL>

只需要将tmpfs的值设置大于800M即可,tmpfs的初始值为内存的一半

编辑/etc/tmpfs文件,将tmpfs的值定为3G

/dev/VolGroup00/LogVol00 / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults,size=3G 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/VolGroup00/LogVol01 swap swap defaults 0 0

加入红显部分即可,接着要将tmpfs重新mount一下

[root@Ginna ~]# umount tmpfs

[root@Ginna ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
28G 11G 16G 40% /
/dev/sda1 99M 22M 72M 24% /boot

[root@Ginna ~]# mount tmpfs

[root@Ginna ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
28G 11G 16G 40% /
/dev/sda1 99M 22M 72M 24% /boot
tmpfs 3.0G 0 3.0G 0% /dev/shm


OK,更改完毕,接着就可以启动Oracle数据库了,但是在OEL下,,更改tmpfs有点区别,还需要更改/etc/rc.d/rc.sysinit文件,详细见