Oracle 11g RAC之HAIP相关问题总结
1 文档概要
- 3.1 使用grid用户修改ASM实例的cluster_interconnects参数
- 3.2 使用oracle用户修改DB实例的cluster_interconnects参数
- 3.3 重启所有实例或集群
- 3.4 检查cluster_interconnects参数
1 文档概要
环境:RHEL 6.4 + GI 11.2.0.4 + Oracle 11.2.0.4
对有关HAIP相关问题的总结,包括禁用/启用HAIP,修改ASM资源的依赖关系,修改cluster_interconnects参数等。
2 禁用/启用HAIP
2.1 禁用/启用HAIP资源
禁用HAIP资源:
root用户执行@all nodes
# /opt/app/11.2.0/grid/bin/crsctl modify res ora.cluster_interconnect.haip -attr "ENABLED=0" -init
启用HAIP资源:
如果之后想重新使用HAIP资源,可以启用:
# /opt/app/11.2.0/grid/bin/crsctl modify res ora.cluster_interconnect.haip -attr "ENABLED=1" -init
在实际处理的案例中,发现其中一个节点始终无法启动HAIP,在另外节点可以启用HAIP,但这样是无法启动集群的,所以在可以启动HAIP的节点直接禁用HAIP,这样所有节点都使用真实的私网地址就可以正常启动成功。但需要注意在有些场景下,单纯禁用HAIP会导致ASM无法启动,这是由于ASM资源的相关依赖关系导致。
2.2 修改ASM资源的依赖关系
在一些实际案例场景,我们直接禁用HAIP资源,再重启has时可能会无法启动ASM资源,因为ASM资源对HAIP有依赖关系。这一点我在自己的测试环境也可以验证。
查看当前ASM资源的关联关系:
[root@jyrac2 ~]# crsctl stat res ora.asm -p -init
NAME=ora.asm
TYPE=ora.asm.type
ACL=owner:grid:rw-,pgrp:oinstall:rw-,other::r--,user:grid:rwx
ACTION_FAILURE_TEMPLATE=
ACTION_SCRIPT=
ACTIVE_PLACEMENT=0
AGENT_FILENAME=%CRS_HOME%/bin/oraagent%CRS_EXE_SUFFIX%
AUTO_START=restore
CARDINALITY=1
CHECK_ARGS=
CHECK_COMMAND=
CHECK_INTERVAL=1
CHECK_TIMEOUT=30
CLEAN_ARGS=
CLEAN_COMMAND=
DAEMON_LOGGING_LEVELS=
DAEMON_TRACING_LEVELS=
DEFAULT_TEMPLATE=
DEGREE=1
DESCRIPTION="ASM instance"
DETACHED=true
ENABLED=1
FAILOVER_DELAY=0
FAILURE_INTERVAL=3
FAILURE_THRESHOLD=5
GEN_USR_ORA_INST_NAME=+ASM2
HOSTING_MEMBERS=
LOAD=1
LOGGING_LEVEL=1
NOT_RESTARTING_TEMPLATE=
OFFLINE_CHECK_INTERVAL=0
ORA_VERSION=11.2.0.4.0
PID_FILE=
PLACEMENT=balanced
PROCESS_TO_MONITOR=
PROFILE_CHANGE_TEMPLATE=
RESTART_ATTEMPTS=5
SCRIPT_TIMEOUT=600
SERVER_POOLS=
SPFILE=
START_ARGS=
START_COMMAND=
START_DEPENDENCIES=hard(ora.cssd,ora.cluster_interconnect.haip,ora.ctssd)pullup(ora.cssd,ora.cluster_interconnect.haip,ora.ctssd)weak(ora.drivers.acfs)
START_TIMEOUT=600
STATE_CHANGE_TEMPLATE=
STOP_ARGS=
STOP_COMMAND=
STOP_DEPENDENCIES=hard(intermediate:ora.cssd,shutdown:ora.cluster_interconnect.haip)
STOP_TIMEOUT=600
UNRESPONSIVE_TIMEOUT=180
UPTIME_THRESHOLD=1h
USR_ORA_ENV=
USR_ORA_INST_NAME=
USR_ORA_OPEN_MODE=mount
USR_ORA_OPI=false
USR_ORA_STOP_MODE=immediate
VERSION=11.2.0.3.0
可以看到ASM资源和HAIP资源的依赖关系。
修改ASM的关联关系@all nodes:
crsctl modify resource ora.asm -attr "START_DEPENDENCIES='hard(ora.cssd,ora.ctssd)pullup(ora.cssd,ora.ctssd)weak(ora.drivers.acfs)'" -f -init
crsctl modify resource ora.asm -attr "STOP_DEPENDENCIES=hard(intermediate:ora.cssd)" -f –init
改回ASM的关联关系:
crsctl modify resource ora.asm -attr "START_DEPENDENCIES='hard(ora.cssd, ora.cluster_interconnect.haip, ora.ctssd)pullup(ora.cssd, ora.cluster_interconnect.haip, ora.ctssd)weak(ora.drivers.acfs)'" -f -init
crsctl modify resource ora.asm -attr "STOP_DEPENDENCIES=hard(intermediate:ora.cssd)" -f –init
3 修改cluster_interconnects参数
3.1 使用grid用户修改ASM实例的cluster_interconnects参数
修改为具体的私网地址,示例如下:
SQL> alter system set cluster_interconnects='10.10.10.50' scope=spfile sid='+ASM1';
SQL> alter system set cluster_interconnects='10.10.10.52' scope=spfile sid='+ASM2';
改回默认值为空,示例如下:
SQL> alter system set cluster_interconnects='' scope=spfile sid='+ASM1';
SQL> alter system set cluster_interconnects='' scope=spfile sid='+ASM2';
3.2 使用oracle用户修改DB实例的cluster_interconnects参数
修改为具体的私网地址,示例如下:
SQL> alter system set cluster_interconnects='10.10.10.50' scope=spfile sid='jyzhao1';
SQL> alter system set cluster_interconnects='10.10.10.52' scope=spfile sid='jyzhao2';
改回默认值为空,示例如下:
SQL> alter system set cluster_interconnects='' scope=spfile sid='jyzhao1';
SQL> alter system set cluster_interconnects='' scope=spfile sid='jyzhao2';
在实际的一个案例中,客户是11g版本的GI环境,实际有2块私网网卡,使用了HAIP特性,同时安装有11g RAC和10g RAC,11g RAC使用HAIP正常,10g RAC由于无法使用HAIP,所以获取到的是真实的私网地址,但是数据库无法在所有节点同时open,这种情况,直接把10g RAC实例的cluster_interconnects参数修改成其中一个网卡的真实私网地址,即可正常在所有节点open。
这类场景是最适合修改参数解决,不影响其他正常使用HAIP的11g环境。
3.3 重启所有实例或集群
修改参数之后需要重新启动实例生效,这里建议直接重启集群一起验证修改后的效果:
# /opt/app/11.2.0/grid/bin/crsctl stop has
# /opt/app/11.2.0/grid/bin/crsctl start has
3.4 检查cluster_interconnects参数
SQL> show parameter cluster_interconnects
Oracle 11g RAC之HAIP相关问题总结的更多相关文章
- 【Oracle 集群】Oracle 11G RAC教程之集群安装(七)
Oracle 11G RAC集群安装(七) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总. ...
- Oracle 11g RAC 环境下单实例非缺省监听及端口配置
如果在Oracle 11g RAC环境下使用dbca创建单实例数据库后,Oracle会自动将其注册到缺省的1521端口及监听器.大多数情况下我们使用的为非缺省监听器以及非缺省的监听端口.而且在Orac ...
- [转帖]Oracle 11G RAC For Windows 2008 R2部署手册
Oracle 11G RAC For Windows 2008 R2部署手册(亲测,成功实施多次) https://www.cnblogs.com/yhfssp/p/7821593.html 总体规划 ...
- oracle 11g RAC 在Windows 7下安装
oracle 11g RAC 在Windows 7下安装 完全要参考RAC11gR2OnWindows.pdf 难点总是在Grid Infrastructure 而安装Grid Infrastruct ...
- 【转】【Oracle 集群】Oracle 11G RAC教程之集群安装(七)
原文地址:http://www.cnblogs.com/baiboy/p/orc7.html 阅读目录 目录 集群安装 参考文献 相关文章 Oracle 11G RAC集群安装(七) 概述:写下本文档 ...
- [转]Oracle 11g RAC SCAN ip的原理及配置
原文地址:http://tiany.blog.51cto.com/513694/1421917/ Oracle 11g RAC SCAN ip的原理及配置 Oracle 11g RAC网格即插即用 ...
- Oracle 11g RAC运维总结
转至:https://blog.csdn.net/qq_41944882/article/details/103560879 1 术语解释1.1 高可用(HA)什么是高可用?顾名思义我们能轻松地理解是 ...
- Oracle 11g RAC 应用补丁简明版
之前总结过<Oracle 11.2.0.4 RAC安装最新PSU补丁>, 这次整理为简明版,忽略一切输出的显示,引入一些官方的说明,增加OJVM PSU的补丁应用. 环境:RHEL6.5 ...
- Oracle 11g RAC停止和启动步骤
关闭前备份控制文件/参数文件: sqlplus / as sysdba alter database backup controlfile to '/home/oracle/control.ctl ...
随机推荐
- 全网最全Docker命令详解
由于最近在学习Docker,在这里把有关Docker的命令做一个集合,方便后面查看: # docker --help Usage: docker [OPTIONS] COMMAND [arg...] ...
- goland pojie
goland pojie 只适用于goland2019.1.3之前的版本,之后的版本没法支持. 1. 步骤 修改vm启动参数 激活正版 2. agent 网上有很多agent都是不能用的,我上传一个可 ...
- table动态添加的tr 其click事件在IE兼容模式中不执行 jquery 1.9 的live事件 和获取 first last
http://www.css88.com/jqapi-1.9/first-of-type/index.html#p=//www.css88.com/jqapi-1.9/last-child-selec ...
- Fabric进阶(三)—— 使用SDK动态增加组织
在fabric网络运行过程中动态追加新的组织是相当复杂的,网上的资料也十分匮乏,大多是基于first-network这样的简单示例,而且是使用启动cli容器的方法来增加组织,几乎没有针对实际应用的解决 ...
- CF948B Primal Sport
题目链接:http://codeforces.com/contest/948/problem/B 知识点: 素数 解题思路: \(f(x)\) 表示 \(x\) 的最大素因子.不难想到:\(X_1 \ ...
- 在DAO的查询操作里,数据库查询到记录,sql语句也成功执行,但是返回的对象是null
在这里 如果改成User user=null; 后面 对user对象的赋值是会失败的. 原因: 要赋值的话,一定要有对象,要new一下给对象分配空间然后再给对象赋值.
- A == B ?(hdu2054)
输入格式:直接循环,同时输入两个不带空格未知长度的字符串. 思考:不带空格未知长度且同时输入,用两个char s[maxsize]定义两个字符数组,再用scanf_s()函数同时输入两个字符串. 注意 ...
- Ubuntu 18.04上交叉编译华硕路由器RT-AC88U的梅林384.15版本
研究了半天官方wiki上的文档,最后却找到这个一键脚本.手动试了一下,丝般顺滑,成功编译出RT-AC88U的梅林固件384.15版本.也可以编译其他路由器型号的固件. 不过这个脚本比较暴力,上来就把/ ...
- spring的mybatis-puls 配置,增删改查操作,分页
pom <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.or ...
- 大O符号初学者指南
原文地址:https://rob-bell.net/2009/06/a-beginners-guide-to-big-o-notation/ 计算机科学中,大O表示法被用来描述一个算法的性能或复杂度. ...