在Linux
小知识:
tmpfs 是Linux中的基于内存的文件系统,通常被挂载到/dev/shm下
在Linux下万物皆文件
总之就是shmfs不能比你分给ORACLE的内存小
[root@rac2 ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/vg_rac2-lv_root
ext4 48G 16G 31G 34% /
tmpfs tmpfs 4.0G 132M 3.8G 4% /dev/shm
/dev/sda1 ext4 477M 43M 409M 10% /boot
/dev/mapper/vg_rac2-lv_home
ext4 4.6G 1.1G 3.3G 26% /home
[root@rac2 ~]# free -m
total used free shared buffers cached
Mem: 7999 5240 2759 900 276 3144
-/+ buffers/cache: 1818 6181
Swap: 6143 0 6143
默认值就是物理内存的一半
ORA-00845 Raised When Starting Instance (文档 ID 465048.1)
解决方案:
1. 关闭
memory_target
2. 修改shmfs的大小
手动更改shmfs的大小 :
# mount -t tmpfs shmfs -o size=7g /dev/shm
永久保存方案1
写入到fstab:
修改/etc/fstab
tmpfs /dev/shm tmpfs
defaults,size=7168M
0 0
永久保留方案2
将
mount -t tmpfs shmfs -o size=7g /dev/shm
写到rc.local
注意必须在oracle开机启动语句的前面