ORA-00845: MEMORY_TARGET not supported on this system


因為Oracle做了VM實體機器移轉後,開機後發生資料庫服務無法啟動的現象

sql> startup
ORA-00845: MEMORY_TARGET not supported on this system

google了一下,發現是oracle參數的[memory_target]設定的大小超過了[/dev/shm]的空間大小(資料庫服務無法啟動時,看不到也無法修改[memory_target]參數,這是後來開起來後回頭去查出來才知道的)。

根據文中說明,看起來oracle會使用此空間來加速程序

/dev/shm is also know as tmpfs i.e. temporary file system which keeps all the file system in virtual memory to speed up several processes.

查一下目前的FileSystem空間分配,

# df -h


紅色框起來的地方size不夠,所以我們要利用下面的指令修改這個size。

 # mount -o remount,size=10G /dev/shm

再利用df -h來檢查是否有放大了。此時再進行database startup時應該可以正常啟動服務了。

目前這種設定只要重開機設定就會跑掉,可以利用下面方法來修改系統設定,讓重開機也能運作這個設定值。
(我在Redhat Enterprice 6.0上實作這個部份,無效,加到/etc/rc.local中也沒有作用,以後有空再來試看看)

修改 file system table

# vi /etc/fstab
  tempfs    /dev/shm    tmpfs    defaults,size=10G    0  0

然後更新 fstab檔案

# mount -a

重開機試試是否已生效。


reference web:
http://www.golinuxhub.com/2012/09/how-to-fix-ora-00845-memorytarget-not.html

留言

這個網誌中的熱門文章

ORA-12514: TNS: 監聽器目前不知道連線描述區中要求的服務

Oracle 例外控制(Exception Control)

Oracle 工作排程 DBMS_JOB 筆記