设置MEMORY_MAX_TARGET为0导致 ORA-00843 ORA-00849 报错

一、 问题背景

想禁用掉oracle的AMM特性,在修改内存参数时执行了 alter system set MEMORY_MAX_TARGET=0 scope=spfile;  在设置时没有报错,但在启动数据库时遇到报错:

  • ORA-00843: Parameter not taking MEMORY_MAX_TARGET into account
  • ORA-00849: SGA_TARGET 10737418240 cannot be set to more than MEMORY_MAX_TARGET 0

懵了一下,还好有备份参数文件,赶紧先恢复然后启动数据库,搜索了一下有好多人都遇到过这个问题 - -||

二、 解决方法

在数据库启动的情况下,其他内存参数还是照设,MEMORY_MAX_TARGET 设置方法有两种:

1. 法一

利用reset将参数改回默认值(MEMORY_MAX_TARGET 默认值为0),重启数据库

alter system reset memory_target;
alter system reset memory_max_target;

2. 法二

利用spfile创建pfile

create pfile from spfile;

在pfile中删除掉 memory_target 和 memory_max_target相关行

利用pfile启动数据库

startup pfile='xxxx'

利用pfile创建spfile

create spfile from pfile;

正常启动数据库

startup

参考

ORA-00843 ORA-00849 Trying to Change SGA_TARGET with MEMORY_MAX_TARGET=0 Being Active (文档 ID 1397761.1)

ORA-00843: Parameter not taking MEMORY_MAX_TARGET into account,-十字螺丝钉-ChinaUnix博客

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hehuyi_In

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值