linux修改tmpfs大小并使之生效

本文详细描述了在Red Hat 6.2 X86_64操作系统下,通过修改fstab文件和调整rc.sysinit配置,解决Oracle 11GR2数据库迁移后共享内存空间不足导致统一身份认证系统无法正常使用的解决方案。
摘要由CSDN通过智能技术生成


  昨天晚上在一个项目上迁移oracle 11G数据库,在这之前已经迁移过一次了,但是没有成功,迁移后导致统一身份认证系统不能正常使用。于是在昨天晚上再次进行迁移,这次采用冷备份的方法直接拷贝oracle文件(为了避免再次出现迁移后统一身份认证系统不能使用),操作系统为redhat 6.2 X86_64,数据库版本为oracle 11G R2。
  按照原有系统相关配置,配置好oracle所需的环境变量,并将oracle软件、数据文件等全部复制到新环境的相同目录即可(这里就不具体介绍了,有兴趣的朋友可留言交流)。所有准备就绪后,启动数据库进行测试,结果报如下错误:
  ORA-00845: MEMORY_TARGET not supported on this system
  经查是由于/dev/shm(共享内存)空间太小,而数据库所需的内存超过/dev/shm目录大小所致,tmpfs 的值默认情况是为系统内存的一半,那么我们就需要给tmpfs增加空间。

[root@orc09-lx ~]# df –h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-LogVol01
485G 125G 336G 28% /
tmpfs 32G 14G 18G 44% /dev/shm
/dev/sda2 485M 38M 423M 9% /boot
/dev/sda1 200M 256K 200M 1% /boot/efi

  修改/etc/fstab文件如下所示:

/dev/mapper/VolGroup-LogVol01 / ext4 defaults 1 1
UUID=ecd0ec5a-2b15-446c-84c3-c459507f7217 /boot ext4 defaults 1 2
UUID=EB00-F1F6 /boot/efi vfat umask=0077,shortname=winnt 0 0
/dev/mapper/VolGroup-LogVol00 swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults,size=46G 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0

  重新挂载/dev/shm使修改生效:

# mount -o remount /dev/shm

  再次查看空间大小

[root@orc09-lx ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-LogVol01
485G 125G 336G 28% /
tmpfs 46G 14G 33G 31% /dev/shm
/dev/sda2 485M 38M 423M 9% /boot
/dev/sda1 200M 256K 200M 1% /boot/efi

  修改成功后,再次重启数据库,已经没有报错,数据库正常启动。数据库正常启动了是不是就完成了呢?no,不是的,重启服务器后,你会发现tmpfs又变成默认大小了,刚才修改的并没有生效,那么我们如何将它设置为永久生效呢?这里除了修改/etc/fstab文件我们还要修改一个非常重要的文件/etc/rc.d/rc.sysinit。
  1、注释以下内容:

# mount -f /dev/shm >/dev/null 2>&1

  2、在/etc/rc.d/rc.sysinit文件中找到并修改如下内容:

# Mount all other filesystems (except for NFS and /proc, which is already
# mounted). Contrary to standard usage,
# filesystems are NOT unmounted in single user mode.
# The ‘no’ applies to all listed filesystem types. See mount(8).
if [ "$READONLY" != "yes" ] ; then
action $”Mounting local filesystems: ” mount -a -ttmpfs,nonfs,nfs4,smbfs,ncpfs,cifs,gfs,gfs2 -O no_netdev
else
action $”Mounting local filesystems: ” mount -a -n -ttmpfs,nonfs,nfs4,smbfs,ncpfs,cifs,gfs,gfs2 -O no_netdev
fi

  修改完成后,重新启动操作系统,发现已经成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值