ORA-27157,ORA-27300,Oracle崩溃
金蝶云社区-蔡嘉盛
蔡嘉盛
0人赞赏了该文章 1,144次浏览 未经作者许可,禁止转载编辑于2020年02月11日 17:14:28
Oracle12c再redhat7上运行,在数据库升级或者日常使用过程中出现了自动掉线情况,tns无法获取实例。在sqlplus中检查发现Oracle进程已经停掉了,需要startup启动数据库实例。
启动实例后通过查找alert日志,目录位置查询 select name,value from v$diag_info;通过警告日志发现以下报错
ORA-27157: OS post/wait facility removed
ORA-27300: OS system dependent operation:semop failed with status: 43
ORA-27301: OS failure message: Identifier removed
ORA-27302: failure occurred at: sskgpwwait1
报错处理方法
在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
该问题影响使用the shared memory segments 和semaphores 的所有应用程序,因此,Oracle ASM 实例和Oracle Database 实例均受到影响
处理:
编辑文件
vim /etc/systemd/logind.conf中
修改RemoveIPC=no 如果前面有#注释需要删除#
退出编辑,重启服务
systemctl daemon-reload
systemctl restart systemd-logind

您的鼓励与嘉奖将成为创作者们前进的动力,如果觉得本文还不错,可以给予作者创作打赏哦!

请选择打赏金币数 *

10金币20金币30金币40金币50金币60金币
可用金币: 0