ORA-00845: MEMORY_TARGET not supported on this system

问题描述:11g r2 修改了 memory_target 大小由原来的 0.8g 调到了 1.5g,startup报错。
SQL> startup;
ORA-00845: MEMORY_TARGET not supported on this system
分析:
[root@11g ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda5        40G   24G   15G  62% /
/dev/sda1       142M   40M   94M  30% /boot
/dev/sda3       9.5G  4.4G  4.7G  49% /tmp
tmpfs           2.0G  253M  1.8G  13% /dev/shm


/dev/shm 特点:
1.速度飞快
2.动态分配:写入更多的数据,/dev/shm占用更多的内存;删除/dev/shm中的数据,那么就减少占用内存。不用这样利于内存的充分使用
3.系统重启后、重新挂载/dev/shm后,/dev/shm中的数据都会消失
4.dev/shm默认值是内存的一半,有时根据需要会增大/dev/shm。


/dev/shm不是立即占用内存,而是采用需要才占用内存的方法。
在上面的例子中,/dev/shm设置的值是2G,我们看到已用写入了253m的数据,也就是占用了253m的内存。


ORA-00845 报错原因:
Oracle中设置memory_target中的值超过了/dev/shm的大小。


解决流程:
1. 编辑 /etc/fstab 文件,修改/dev/shm大小

tmpfs                   /dev/shm                tmpfs   defaults    0 0
改为
tmpfs                   /dev/shm                tmpfs   defaults,size=2000M    0 0
2. 先 umount /dev/shm 再 mount /dev/shm
3. df -h 查看是否生效
4. startup Oracle数据库。
SQL> startup;
ORACLE instance started.


Total System Global Area 1670221824 bytes
Fixed Size    2253824 bytes
Variable Size 1056967680 bytes
Database Buffers  603979776 bytes
Redo Buffers    7020544 bytes
Database mounted.
Database opened.

posted on 2017-05-03 17:35  张冲andy  阅读(720)  评论(0编辑  收藏  举报

导航