ITPub博客

首页 > 数据库 > Oracle > ORA-00845: MEMORY_TARGET not supported on this system

ORA-00845: MEMORY_TARGET not supported on this system

原创 Oracle 作者:张冲andy 时间:2017-05-03 17:35:20 0 删除 编辑
问题描述: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.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31383567/viewspace-2138356/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 行转列、列转行
请登录后发表评论 登录
全部评论
支持就关注我个人公众号:DBA烂笔头 。专注数据库领域,熟悉oracle、mysql、redis、mongodb,clickhouse等相关技术

注册时间:2016-08-11

  • 博文量
    626
  • 访问量
    286404