从oracle 11gR1 开始,Member Kill Escalation的出现成功的解决了前面提到的情况。当实例eviction在指定的时间内(默认20秒)不能

首先我们介绍一下历史。在Oracle 9i/10g 中,如果一个数据库实例需要驱逐(evict, alert 文件中会出现ora-29740错误)另一个实例时,需要通过LMON进程在控制文件(以下简称CF)中写入相应信息,当目标实例的LMON进程读取到相应的信息后,该实例shudown。但是,如果目标实例的LMON进程挂起而无法完成CF I/O的话,eviction将无法成功,这种情况有可能导致整个数据库挂起,需要dba手工干预。

所以,,从oracle 11gR1 开始,Member Kill Escalation的出现成功的解决了前面提到的情况。当实例eviction在指定的时间内(默认20秒)不能成功完成时,oracle会在css层面上(因为lmon进程会作为成员注册到css上,相应的内容会在今后的文章中介绍)产生一个新的进程 Kill Daemon(以下简称KD), 终止目标实例的LMON进程以保证eviction 能够成功结束。如果情况更糟,KD进程也无法在指定的时间内(默认30秒)终止LMON进程,css 会把member kill升级为node kill,目标节点的css会重新启动本节点,以确保数据库的一致性。当然,如果您的版本是11.2.0.2或更高,由于新特性Rebootless restart的引入,node kill首先会尝试重新启动GI stack,如果不能够完成,才会重新启动节点。

接下来我们用下面的例子说明Member Kill Escalation是如何工作的。

1.实例2发现实例1的LMS1进程出现问题,并发出member kill request.

实例2 Alert log:

Sat Jul 24 10:37:37 2010

LMS1 (ospid: 22636) has detected no messaging activity from instance 1

LMS1 (ospid: 22636) issues an IMR to resolve the situation

Please check LMS1 trace file for more detail.

Sat Jul 24 10:37:37 2010 <======= 实例2发出reconfiguration请求

Communications reconfiguration: instance_number 1

Sat Jul 24 10:38:25 2010

Evicting instance 1 from cluster

Waiting for instances to leave:

1

Sat Jul 24 10:38:45 2010 <===== 在reconfiguration请求发出20秒之后实例1仍然没有离开集群,实例2发出了member kill的请求。

Remote instance kill is issued with system inc 10

Remote instance kill map (size 1) : 1

Sat Jul 24 10:38:55 2010

Waiting for instances to leave:

1

2. 节点2的ocssd.bin收到member kill请求之后,向节点1的KD发出了请求,要求终止节点1的lmon进程。

节点2 ocssd.log:

2010-07-24 10:38:45.112: [ CSSD][1091119424]clssgmExecuteClientRequest: Member kill request from client (0x2aaab4178470)

2010-07-24 10:38:45.113: [ CSSD][1091119424]clssgmReqMemberKill: Kill requested map 0x00000001 flags 0x2 escalate 0xffffffff <========= member kill escalation还没有发生。

2010-07-24 10:38:45.113: [ CSSD][1281349952]clssgmMbrKillThread: Kill requested map 0x00000001 id 2 Group name DBOR08P flags 0x00000001 start time 0x98117058 end time 0x9811e77c time out 30500 req node 2 <======= member kill 需要在30秒内完成。

如果节点1能够在指定的时间内(30秒)终止本地lmon进程,member kill 就不会被escalation 成为node kill。

3.由于member kill 没有在指定的时间内完成,被escalate 为node kill,即节点1 重启。

节点2 ocssd.log:

2010-07-24 10:39:15.619: [ CSSD][1281349952]clssgmMbrKillThread: Time up: Start time -1743687592 End time -1743657092 Current time -1743657092 timeout 30500

2010-07-24 10:39:15.619: [ CSSD][1281349952]clssgmMbrKillThread: Member kill request complete.

2010-07-24 10:39:15.619: [ CSSD][1281349952]clssgmMbrKillSendEvent: Missing answers or immediate escalation: Req member 1 Req node 2 Number of answers expected 0 Number of answers outstanding 1

2010-07-24 10:39:15.620: [ CSSD][1281349952]clssgmMbrKillEsc: Escalating node 1 Member request 0x00000001 Member success 0x00000000 Member failure 0x00000000 Number left to kill 1

2010-07-24 10:39:15.620: [ CSSD][1281349952]clssnmKillNode: node 1 (ghlx062ptlge) kill initiated <====== 节点1被重启

注意:member kill escalation不仅适用于database 实例,同时也适用于ASM实例。

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

oracle11gR版本GI中新增,Oracle11g新特性MemberKillEscalation简介相关推荐

  1. oracle 分区表 变大,Oracle11G新特性:分区表分区默认segment大小64k变为8M

    Oracle11G新特性:分区表分区默认segment大小64k变为8M 2017-02-08 在oracle11.2创建分区表,每个分区默认大小为8M,是由_partition_large_exte ...

  2. Python 3.11 中的最佳新特性和修正

    更快的解释器,更易懂的错误,更强大的类型提示,以及其他一系列的加速和调整,现在都可以试用了. Python 每年都会发布新版本,上半年是功能锁定的测试版,年底是最终版本. Python 3.11 的特 ...

  3. 解读ASP.NET 5 MVC6系列(17):MVC中的其他新特性

    原文:解读ASP.NET 5 & MVC6系列(17):MVC中的其他新特性 (GlobalImport全局导入功能) 默认新建立的MVC程序中,在Views目录下,新增加了一个_Global ...

  4. CSS3中的一些新特性(CSS)

    CSS3中的一些新特性 CSS3能做什么 边框 阴影 box-shadow 颜色 文字与字体 背景 CSS3中的动画 CSS3是CSS2的升级版本,3只是版本号,它在CSS2.1的基础上增加了很多强大 ...

  5. 详细解读Windows8.1 Update中的WIMBoot新特性

    微软在Windows8.1 Update发布免费更新后,越来越多win8系统用户选择了升级,在Windows8.1 Update全新系统中有一项WIMBoot新技术,面对新特性很多用户还是一筹莫展,不 ...

  6. Oracle11g新特性简介

    转 Oracle 11g 新特性简介https://blog.csdn.net/tianlesoftware/article/details/5134819  Oracle 11g于2007年7月11 ...

  7. oracle11g 新特性

    一.新特性提纲 1.数据库管理部分 ◆数据库重演(Database Replay)  这一特性可以捕捉整个数据的负载,并且传递到一个从备份或者standby数据库中创建的测试数据库上,然后重演负责以测 ...

  8. Oracle11g新特性注意事项

    在从oracle10g升级到oracle11g后,就需要对oracle11g的新特性进行了解,这些特性可能会对应用及性能产生影响,需要调整. 1. Oracle11g密码过期策略 oracle11g中 ...

  9. Oracle11g新特性密码延迟验证的坑

    在 Oracle 11g 中,为了提升安全性,Oracle 引入了『密码延迟验证』的新特性.这个特性的作用是,如果用户输入了错误的密码尝试登录,那么随着登录错误次数的增加,每次登录前验证的时间也会增加 ...

最新文章

  1. multipartfile前端怎么传_前端那些事如何更好管理 Api 接口
  2. 什么时候html的过渡版本,CSS过渡与转换
  3. 2/100. Hamming Distance
  4. [Leedcode][JAVA][第55题][跳跃游戏][贪心][动态规划]
  5. 作为移动开发程序员,腾讯3轮面试都问了Android事件分发,分享PDF高清版
  6. 广州地铁的速度与激情
  7. 缠中说禅图解分析示范
  8. 超简单实用操作!用Python让Excel飞起来【附详细教程】
  9. ABBYY最新官方免费序列号激活码序列号密钥下载分享
  10. 为什么计算机网络使用数字信号,计算机网络数字电子技术的作用
  11. sun java system calendar 服务器拒绝服务_sun java system cale
  12. 扫雷小游戏(两小时完成)
  13. Linux电池电量信息读取,linux内核 – 如何在Linux内核模块中获取电池电量?
  14. 1103 Integer Factorization (30分)
  15. 河南大学计算机学院吴哲2008年,计算机与信息工程学院86级校友荣归母校
  16. 编程语言python这个词怎么翻译_五大理由从 Python 转到 Go 语言【已翻译100%】...
  17. redis解除(删除)主从关系
  18. mapbox-gl开发教程(二):地图主要配置参数说明
  19. 记lrd的高二上学期第五次调研考试
  20. Android之View提升:四 使用ExpandableListView 折叠显示

热门文章

  1. linux docker安装svn,使用docker镜像搭建svn+Apache环境
  2. 初中生学计算机视频,推荐一下适合中学生的在线视频学习网站
  3. JAVA实现inotify一样的功能_WPF实现INotifyPropertyChanged
  4. SXSSFWorkbook使用——使用excel模板
  5. java开发安装mysql_从零开始搭建Java开发环境第二篇:如何在windows10里安装MySQL
  6. Linux编译soci库,Soci库linux下的编译方法
  7. java ssh 那一层应该捕获异常_ssh经典异常!
  8. java实时更新权限_java – 如何使用Spring Security重新加载用户更新的权限
  9. mysql免安装出现1067_mysql,免安装,1067错误
  10. work节点使用外部包_AFLSmart工具简单分析及使用介绍