Oracle启动--ORA-00845: MEMORY_TARGET not supported on this system
虚拟机占内存多,其实也不是太多,主要是小黑大不如从前,其实不怪小黑,现在系统程序都太吃内存,其实... 现在 废话
虚拟机内存原来给开了1G内存,感觉主机卡,缩小到512。进虚拟机后启动oracle 报错 ORA-00845: MEMORY_TARGET not supported on this system。
一定是调小内存Oracle 生气才报错给我,追忆排查..
1. 先执行top,然后shift+m
发现gnome-shell一直占的比较多,界面谢谢你,但你现在必须离去。
在centos7下的命令如下:
systemctl set-default graphical.target 启动图形界面
systemctl set-default multi-user.target 启动文本界面
2. free -m 发现剩下的内存还是太少
total used free shared buffers cached Mem: 490 311 178 4 0 169 -/+ buffers/cache: 141 348 Swap: 2079 0 2079
3. 再压缩压缩
释放内存
#sync
#echo 3 > /proc/sys/vm/drop_caches
total used free shared buffers cached Mem: 490 177 312 4 0 45 -/+ buffers/cache: 131 358 Swap: 2079 0 2079
4. 差不多了,再去修改一下启动文件spfile的内存分配参数
先执行:create pfile from spfile;
File created.
然后进入 cd $ORACLE_HOME/dbs 再 vim initFIRST.ora 修改参数 *.memory_target
最小值可能是276m换算成bytes 289406976 即 *.memory_target=289406976
然后转化回去
create spfile from pfile;
File created.
5. 其实oracle启动需要的内存已经可以,但是依然启动不来,为什么呢?
答案是:/dev/shm的值 < *.memory_target 现在*.memory_target已经很小了,那去更改/dev/shm的值吧
改法:a)先查看 df - h
[oracle@localhost ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 42G 27G 15G 65% / devtmpfs 237M 0 237M 0% /dev tmpfs 246M 0 246M 0% /dev/shm tmpfs 246M 4.7M 241M 2% /run tmpfs 246M 0 246M 0% /sys/fs/cgroup /dev/mapper/centos-home 21G 98M 21G 1% /home /dev/sda1 497M 118M 379M 24% /boot
b)现在才246 要改大,改成2G吧。root用户 修改的文件 vim /etc/fstab (没有的话增加下面一行)
tmpfs /dev/shm tmpfs defaults,size=2G 0 0
重启后每次都生效,如果只想本次有效mount -t tmpfs shmfs -o size=1G /dev/shm。重启后再看
文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/centos-root 42G 27G 15G 65% / devtmpfs 237M 0 237M 0% /dev tmpfs 2.0G 0 2.0G 0% /dev/shm tmpfs 246M 4.7M 241M 2% /run tmpfs 246M 0 246M 0% /sys/fs/cgroup /dev/mapper/centos-home 21G 98M 21G 1% /home /dev/sda1 497M 118M 379M 24% /boot [root@localhost ~]#
最终启动起来了,说实话,分512M给oracle 太欺负人了!!!!
如果你也因为内存原因启动不来了,那么请您优先从第5条做起!
浙公网安备 33010602011771号