opidrv aborting process M002 ospid (3561) as a result of ORA-600
ORA-27300: 操作系统相关操作: semctl 失败, 状态为: 22
ORA-27301: 操作系统故障消息: Invalid argument
ORA-27302: 错误发生在: sskgpwrm1
ORA-27157: 已删除了操作系统发送/等待功能
ORA-27300: 操作系统相关操作: semop 失败, 状态为: 43
ORA-27301: 操作系统故障消息: Identifier removed
ORA-27302: 错误发生在: sskgpwwait1
在centos7.2中,systemd-logind 服务引入了一个新特性,该新特性是:当一个user 完全退出os之后,remove掉所有的IPC objects。
该特性由/etc/systemd/logind.conf参数文件中RemoveIPC选项来控制。
在centos7.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.
Oracle Linux 7.2 通过在/etc/systemd/logind.conf配置文件中明确设置RemoveIPC为no,Oracle Linux7.2 避免了该问题
解决办法:
修改/etc/systemd/logind.conf RemoveIPC=no
systemctl daemon-reload或者重启操作系统。
具体详见MOS ID 2081410.1