Oracle 的memory_target参数设置必须大于等于sga_max_size,不小心设置的不一样,结果导致oracle无法启动,
startup:
SQL> startup
ORA-00844: Parameter not taking MEMORY_TARGET into account
ORA-00851: SGA_MAX_SIZE 1073741824 cannot be set to more than MEMORY_TARGET 8053
06368.
解决方式:
sqlplus /as nolog
conn sys as sysdba
create pfile from spfile //上述参数在文件spfile内二进制存储,无法直接修改,但是通过spfile创建的pfile是文本文件,spfile位置ORACLE_HOME/database/SPFILExxx.ORA(oracle11g)。创建的pfile在同目录下文件名成为:INITxxx.ORA, xxx是实例名称.
修改INITxxx.ORA,找到memory_target修改为sga_max_size的大小或者删除掉,保存一下。
create spfile from pfile //会通过pfile创建spfile.
startup //可以成功启动了
本文介绍了解决Oracle因memory_target参数小于sga_max_size而导致无法启动的问题。通过创建pfile并修改memory_target为sga_max_size的大小或删除该参数,然后重建spfile,最终实现Oracle的正常启动。
1983





