在RHEL7.2中,systemd-logind 服务引入了一个新特性,该新特性是:当一个user 完全退出os之后,remove掉所有的IPC objects。
该特性由/etc/systemd/logind.conf参数文件中RemoveIPC选项来控制。详细请看man logind.conf(5)
在RHEL7.2中,RemoveIPC的默认值为yes,因此,当最后一个oracle 或者Grid用户退出时,操作系统会remove 掉这个user的shared memory segments and semaphores
由于Oracle ASM 和database 使用 shared memory segments,remove shared memory segments将会crash掉Oracle ASM and database instances.
请参考Redhat bug 1264533 - https://bugzilla.redhat.com/show_bug.cgi?id=1264533
该问题影响使用the shared memory segments和semaphores的所有应用程序,因此,Oracle ASM 实例和Oracle Database 实例均受到影响。
Oracle Linux 7.2 通过在/etc/systemd/logind.conf配置文件中明确设置RemoveIPC为no(OEL 7.2 缺省已经RemoveIPC为no)避免了该问题。
同时,tuxedo等中间件产品也会因为这个特性影响而导致服务出现问题,因此,我们建议所有的RHEL7.2的server,RemoveIPC全部设置为no。
原创文章,版权归本文作者所有,如需转载或合作,请务必联系我们
欢迎咨询海天起点技术专家
免费热线:800-810-3650 400-810-3650
喜欢本文请长按下方的二维码订阅海天起点





