一、目标:Oracle Haip 启动报错

需求:日常运维过程中,已经遇到两次由于HAIP引发的问题,特此进行记录。

本次问题是看着大佬-李海清操作,整完了记录一下,上一次HAIP折腾了4个小时。

Oracle Haip是给Oracle 提供私网的高可用,存在多个私网网卡的情况下,会有多个HAIP,这样某个私网网卡down,并不影响整个RAC集群的通信。

二、HAIP启动失败排查思路

可能性很多,那么怎么排查定位问题。

参考

https://blog.csdn.net/m0_38048955/article/details/115345414
https://www.cnblogs.com/jyzhao/p/7686243.html

1) 心跳网卡异常

2)  多播工作机制异常

3)  防火墙等原因

4)  Oracle bug

问题时间出现在初始化安装、日常维护,这样容易找到差异点。

三、HAIP案例

3.1 网络策略导致HAIP 无法通讯

这个之前发过博客

https://www.cnblogs.com/lvcha001/p/12155042.html

小结一下:
1.安装11g R2 RAC时,节点1安装GI没问题,HAIP可以启动;
2.安装节点2GI时,HAIP启动失败;
3.通过上述情况基本可以定位为两个节点的HAIP无法通讯
4.通过ping 判断节点1->节点2 haip网络不通;
5.客户网络工程师确认无法开通HAIP

原文链接:https://blog.csdn.net/evils798/article/details/27248263 操作,为私网配置网关,重启网络服务,重新安装(建议可以尝试上述链接,指定IP的网卡路由) 重新配置私网网关地址之后,重新安装RAC ,再次执行root.sh 报错,本次169.254 的Oracle haip地址使用的是eth1的私网网卡地址,但是发现 节点1无法ping通节点2的haip地址。 ASM on Non-First Node (Second or Others) Fails to Start: PMON (ospid: nnnn): terminating the instance due to error 481 (Doc ID 1383737.1) 并且,grid$sqlplus / as sysasm SQL>startup 报错如上述,还是私网HAIP不通的问题。 Case5. HAIP is up on all nodes and route info is presented but HAIP is not pingable
Symptom:
HAIP is presented on both nodes and route information is also presented, but both nodes can not ping or traceroute against the other node HAIP. ······ Solution: For Openstack Cloud implementation, engage system admin to create another neutron port to map link-local traffic. For other environment,
engage SysAdmin/NetworkAdmin to review routing/network setup. 解决方案是让网络工程师调整,但是云厂商很难具体开通HAIP之间的连接。 本次选择禁用HAIP 服务,达到云环境安装目的。

3.2 AIX环境更换私网网卡后bpf device设备未更新导致Haip服务启动失败

问题表象,RAC 11.2.0.4 正常使用,增加新的私网网卡后,删除原来的私网网卡后,重启集群CRS. haip 节点1启动失败,此时节点2集群出于关闭状态,不存在网络交互的问题。
手工启动haip服务

crsctl start res ora.cluster_interconnect.haip -init

启动失败,观察日志,匹配如下MOS bug ,oracle bug建议使用root 执行命令进行刷新!刷新后,问题解决。


已知问题:Grid Infrastructure Redundant Interconnect 和 ora.cluster_interconnect.haip(文档 ID 1640865.1)
2012-04-21 12:36:43.951: [ USRTHRD][2572] {0:0:2} (null) category: -2, operation: SETIF, loc: bpfopen:21,o, OS error: 6, other: dev /dev/bpf0, ifr en2
Solution/Workaround:
It's known on AIX and Solaris that command executed via sudo etc may not have full root environment, which could cause HAIP startup failure.
The solution is to obtain and apply patch 16445624 on AIX.
The workaround is to execute root script (root.sh or rootupgrade.sh) as real root user directly.
If root script already failed, try one or all of the following:
- reboot the node
- execute "/usr/sbin/tcpdump -D" as root user, if the timestamp of the bpf device didn't get updated, delete the device and re-run the same "tcpdump -D" command
Before re-running root script, verify whether the following exists and the timestamp is updated
ls -ltr /dev/bpf*
cr-------- 1 root system 42, 0 Oct 03 10:32 /dev/bpf0
.. Grid Infrastructure Redundant Interconnect 和 ora.cluster_interconnect.haip(文档 ID 1210883.1)
https://blog.csdn.net/m0_38048955/article/details/115345414
对于心跳网卡异常,如果只有一块心跳网卡,那么ping其他的ip就可以进行验证了,这一点很容易排除。
对于多播的问题,可以通过Oracle提供的mcasttest.pl脚本进行检测(请参考Grid Infrastructure Startup During Patching, Install or Upgrade May Fail
Due to Multicasting Requirement (ID 1212703.1)

Oracle Haip无法启动问题学习的更多相关文章

  1. <Oracle Database>数据库启动与关闭

    启动和关闭Oracle数据库 要启动和关闭数据库,必须要以具有Oracle 管理员权限的用户登陆,通常也就是以具有SYSDBA权限的用户登陆.一般我们常用INTERNAL用户来启动和关闭数据库(INT ...

  2. Oracle Database 11g Express Edition学习笔记

    修改字符集 使用用户system,通过sqlplus程序连接到Oracle数据库,输入以下命令,查看字符集: SQL> select userenv('language') from dual; ...

  3. Oracle 10g RAC启动与关闭命令

    一. 检查共享设备 一般情况下, 存放OCR 和 Voting Disk 的OCFS2 或者raw 都是自动启动的. 如果他们没有启动,RAC 肯定是启动不了的. 1.1 如果使用ocfs2的,检查o ...

  4. Linux——oracle数据库实例启动关闭(转)

    -->Oracle 数据库实例启动关闭过程 --================================ [root@robinson ~]# su - oracle --查看未启动实例 ...

  5. 深刻理解Oracle数据库的启动和关闭 .

    Oracle数据库提供了几种不同的数据库启动和关闭方式,本文将详细介绍这些启动和关闭方式之间的区别以及它们各自不同的功能. 一.启动和关闭Oracle数据库 对于大多数Oracle DBA来说,启动和 ...

  6. Oracle数据库的启动和关闭

    深刻理解Oracle数据库的启动和关闭 Oracle数据库提供了几种不同的数据库启动和关闭方式,本文将详细介绍这些启动和关闭方式之间的区别以及它们各自不同的功能. 一.启动和关闭Oracle数据库 对 ...

  7. Oracle数据库的启动和关闭实例

    在开始了解oracle数据库的命令之前,先来看一个东西:SQL*PLUS(sqlplus) Oracle的sql*plus是与oracle进行交互的客户端工具.在sql*plus中,可以运行sql*p ...

  8. undo丢失恢复异常恢复,运维DBA反映Oracle数据库无法启动报错ORA-01157 ORA-01110,分析原因为Oracle数据库坏块导致

    本文转自 惜纷飞 大师. 模拟基表事务未提交数据库crash,undo丢失恢复异常恢复,运维DBA反映Oracle数据库无法启动报错ORA-01157 ORA-01110,分析原因为Oracle数据库 ...

  9. oracle监听,数据库,oracle服务器的启动和停用

    一.oracle监听,数据库,oracle服务器的启动和停用 使用root用户登录:切换用户su – root/root操作系统,一般只有root用户才有权限去操作系统中安装的oracle数据库服务器 ...

随机推荐

  1. Easylogging++的使用及扩展

    目录 简介 使用 扩展 配置日志路径 时间滚动日志 自动删除日志 封装到一个头文件 源代码优化(不推荐) 附件 简介 Easylogging++ 是用于 C++ 应用程序的单头高效日志库.它非常强大, ...

  2. CPU 指令环 ring0,ring1,ring2,ring3

    Intel的CPU将特权级别分为4个级别:RING0,RING1,RING2,RING3. Windows只使用其中的两个级别RING0和RING3,RING0只给操作系统用,RING3谁都能用.如果 ...

  3. 如何制作图标字体(如何将svg转换为css可用的图标字体)

    转自: 如何制作图标字体(如何将svg转换为css可用的图标字体) 具体描述 在项目开发当中,我们常常遇到需要将获取到的svg转换为,css可用的图标字体,那么具体该如何进行操作呢 具体操作 登录ic ...

  4. Linux放大缩小字体的快捷键

    linux终端窗口字体缩放快捷键 环境:linux, 打开终端, 'ctrl' + '-'字体缩小,一行显示更多的内容 'ctrl' + 'shift' + '+'字体变大 ctl+shift+(+) ...

  5. asp.net mvc 传值

    视图的查找 asp.net MVC 不需要用using 释放资源

  6. WPF---数据绑定之Xml数据源(四)

    一.场景 现在外部有一xml文件,我们想将该xml文件中的内容绑定到ListView中,该如何实现? 二.实现 xml文件的内容如下: <?xml version="1.0" ...

  7. linux(2)-----新装linux配置

    1.配置本机ip,刚装的Linux无内网ip vi /etc/susconfig/network-scripts/ifcfq-ens33    编辑配置文件 最后一行改为yes service net ...

  8. 多线程Synchronized的两种锁

    Synchronized的作用: 能够保证在同一时刻最多只有一个线程执行该段代码,以达到保证并发安全的效果 Synchronized的两个用法: 1)对象锁 包括方法锁(默认锁对象为this当前实例对 ...

  9. Flink中的Time与Window

    一.Time 在Flink的流式处理中,会涉及到时间的不同概念 Event Time(事件时间):是事件创建的时间.它通常由事件中的时间戳描述,例如采集的日志数据中,每一条日志都会记录自己的生成时间, ...

  10. 用C++实现的Eratosthenes筛法程序

    运行示例 只输出素数总数的运行示例 PS H:\Read\num\x64\Release> .\esieve.exe Eratosthenes sieve: a method to find o ...