After upgrading my Ubuntu, I found out the database failed to start. I got the following error:
ORA-00845: MEMORY_TARGET not supported
Apparently some symbolic links are modified, causing the configuration to break.
There is a nice thread on the Oracle Support Forums explaining how to fix this once and for all. I’ve pasted the solution here below.
------------------------------------------------------------------------------------------ Another solution is to prevent Ubuntu from creating the symbolic link from /dev/shm to /run/shm by default. This is just a matter of editing /etc/init/mounted-dev.conf and commenting out the line that reads:
# [ -e /dev/shm ] || ln -s /run/shm /dev/shm
Then it's just a matter of adding an entry into /etc/fstab for the shared memory temporary file system mounted at /dev/shm, say for a 2 gigabyte file add:
shm /dev/shm tmpfs size=2g 0 0
NB. The really neat thing about this is that you now don't need the /etc/init.d/oracle-shm fix-up script at all as described in Section 7) of Oracle 11gR2 Express Edition on Linux Ubuntu 11.10 howto. However if you have already created it you can remove it using:
update-rc.d -f oracle-shm remove
Then either reboot to mount the new file system, or run:
rm -f /dev/shm mount /dev/shm
------------------------------------------------------------------------------------------
I used a 1 gigabyte shared memory temporary file, and it worked fine for me.