Oracle启动报错ORA-00845: MEMORY_TARGET not supported on this system
原因可能:ORACLE MEMORY_TARGET参数设置超过了oracle服务器本身内存、或超过了现在服务器空闲内存(就是oracle启动时无法获取设置的内存)
eg:
oracle version:11gR2
OS version:RedHat 6.4企业版
服务器:虚拟机
分析步骤:
1.查看当前 MEMORY_TARGET参数的值为*.memory_target=408944640,大致为390M;(可以通过spfile查看)
2.查看当前系统的内存,大概为200M
grep -i memtotal /proc/meminfo
MemTotal: 236376 kB
问题确认:
确认为oracle MEMORY_TARGET参数设置SGA大于操作系统的空闲内存
解决:
修改MEMORY_TARGET的值为合适的范围之内(如果是正式环境切oracle需要设置MEMORY_TARGET的内存,需要增加服务器内存,本初不讨论)
1.备份现有spfile文件
cp spfilestudy.ora spfilestudy.ora.bak
2.使用spfile创建pfile(spfile为二进制文本,不可直接修改),修改pfile后,重新生成spfile
SQL> create pfile from spfile;
File created.
修改pfile参数*.memory_target=104857600
SQL> create spfile from pfile;
File created.
确认后,启动oracle