g_hk 发表于 2011-12-23 03:51

ORA-00845: MEMORY_TARGET not supported on this system

VM中Oracle的一个测试,原来VM使用内存为4G,后来修改小一些到1G,结果启动报错:<br>$ sqlplus "/as sysdba"<br><br>SQL*Plus: Release 11.2.0.1.0 Production on Tue Oct 4 16:02:10 2011<br><br>Copyright (c) 1982, 2009, Oracle.&nbsp; All rights reserved.<br><br>Connected to an idle instance.<br><br>SQL&gt; startup<br>ORA-00845: MEMORY_TARGET not supported on this system<br><br>后来修改了/etc/fstab内容:<br>none&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /dev/shm&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tmpfs&nbsp;&nbsp; defaults,size=6G&nbsp;&nbsp;&nbsp; 0 0<br>增加size=6G<br><br>然后:<br>shutdown ASM Instance<br>umount /dev/shm<br>mount /dev/shm<br>startup ASM Instance<br>startup RDBMS Instance就OK了。<br><br>具体参照下面文章解决的该问题。<br><br>=============================================================<br>问题:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 利用dbca新建数据库后,关闭数据库,再重启,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 结果出现错误:ORA-00845: MEMORY_TARGET not supported on this system<br><br>原因:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 官方文档解释<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <strong>Starting with Oracle Database 11g, the Automatic MemoryManagement feature requires more shared <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; memory (/dev/shm)and filedescriptors. The size of the shared memory should be at least thegreater of <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MEMORY_MAX_TARGET and MEMORY_TARGET for each Oracle instanceon the computer. If&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MEMORY_MAX_TARGET or MEMORY_TARGET is set to a nonzero value, and an incorrect size is assigned <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; to the shared memory, itwill result in an ORA-00845 error at startup. </strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 简单来说就是 MEMORY_MAX_TARGET 的设置不能超过 /dev/shm 的大小: <br><br>解决(一)修改shm大小:<br>1&nbsp;&nbsp;&nbsp; $ df -h | grep shm<br>2&nbsp;&nbsp;&nbsp; tmpfs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2.0G&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp; 2.0G&nbsp;&nbsp; 0% /dev/shm<br><br>马上把它加大:<br>1&nbsp;&nbsp;&nbsp; # cat /etc/fstab | grep tmpfs<br>2&nbsp;&nbsp;&nbsp; tmpfs /dev/shm tmpfs&nbsp;&nbsp; defaults,size=4G 0 0<br><br>&nbsp;现在可以通过重启使这个配置生效,也可以通过重新挂载来修改其大小:<br>1&nbsp;&nbsp;&nbsp; # mount -o remount,size=4G /dev/shm<br>2&nbsp;&nbsp;&nbsp; # df -h | grep shm<br>3&nbsp;&nbsp;&nbsp; tmpfs 4.0G&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp; 4.0G&nbsp;&nbsp; 0% /dev/shm<br><br>解决(二)修改<strong>MEMORY_TARGET大小</strong><br>通过修改配置文件initxxxx.ora,修改memory_target的大小,<br>#vi initxxxx.ora<br>#sqlplus /nolog<br>#SQL&gt; startup pfile='/xxx/xxxx/xxx/xxx/xxx/initxxxx.ora';<br>#SQL&gt; create spfile from pfile;<br><br>Ref: <a href="http://shanchao7932297.blog.163.com/blog/static/1363624201131443532446/" target="_blank" target="_blank">http://shanchao7932297.blog.163.com/blog/static/1363624201131443532446/</a><br>
页: [1]
查看完整版本: ORA-00845: MEMORY_TARGET not supported on this system