OracleASM关闭AMM,打开ASMM,修改参数后报ORA-00843 ORA-00849

来源:这里教程网 时间:2026-03-03 14:47:22 作者:

错误描述

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

错误原因

memory_max_target
memory_target
两个参数关闭时,不能同时显式的指定为0,同时指定为0,启动时将会发生上面错误,导致ASM启动失败,进而导致CRS启动失败
SQL> alter system set sga_target=700M scope=spfile;
System altered.
SQL> alter system set sga_max_size=800M scope=spfile;
System altered.
SQL> alter system set pga_aggregate_target=200M scope=spfile;
SQL> alter system set memory_target=0 scope=spfile sid='*';
System altered.
SQL> alter system set memory_max_target=0 scope=spfile sid='*';
System altered.
 SQL> alter system reset memory_max_target scope=spfile sid='*';
System altered.

当发生ASM由于上面报错无法启动时解决

/* 独占模式启动crs
/* 11.2.0.1
# crsctl start crs -excl 
/* 11.2.0.2以后
# crsctl start crs -excl -nocrs
/* 手工编写asm pfile,指定pfile启动asm实例
$ sqlplus / as sysasm
SQL > startup pfile='/tmp/asm.pfile';
/* 手工修改pfile之后,创建spfile
SQL> create spfile='+OCRDG' from pfile='';
/* 启动测试
$ sqlplus / as sysasm
SQL> shutdown immediate;
SQL> startup;
/* 关闭ASM实例,启动集群
# crsctl stop crs -f
# crsctl start crs

相关推荐