如何修改Oracle 11gR2中的资源属性

今天简单介绍下Oracle GI 11gR2中CRS相关资源属性的修改。

在Oracle 11gR2中,所有的资源在安装结束的时候都有一些默认属性。这里的资源不仅仅包含CRS资源比如nodeapps, asm, listener, db等等,也包括在11gR2中新引入的ohasd资源(当然crs也是OHASD资源的一种),包括crsd, gpnpd, gipcd, ctssd等等。这些属性比如超时时间,启动脚本,依赖关系等等。当然这里提供的只是一个方法,至于是否需要修改,什么时候修改则请慎重使用,而且很多资源资源是不被官方支持的。

在11gR2中,资源属性的查看方法是使用crsctl命令,另外简单提一句,经常看到很多人在查看资源的时候习惯于使用之前版本(10gR2, 11gR1)的一些命令,比如crs_stat, crs_start ,其实这些命令在11gR2已经废弃,保留他们的目的也只是为了向后兼容。在11gR2中另外一个推荐的命令就是srvctl。这两个命令在11gR2都得到了很大的增强,而且基本可以完成所有的管理任务了。

crsctl status resource -t 可以显示所有的CRS资源及状态

crsctl status resource -t -init 可以显示所有的OHASD资源及状态
bash-3.00# /u01/app/crshome/bin/crsctl stat res -t -init
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.asm
      1        ONLINE  ONLINE       node2                 Started             
ora.crf
      1        ONLINE  ONLINE       node2                                     
ora.crsd
      1        ONLINE  ONLINE       node2                                     
ora.cssd
      1        ONLINE  ONLINE       node2                                     
ora.cssdmonitor
      1        ONLINE  ONLINE       node2                                     
ora.ctssd
      1        ONLINE  ONLINE       node2                 OBSERVER            
ora.diskmon
      1        ONLINE  ONLINE       node2                                     
ora.drivers.acfs
      1        ONLINE  ONLINE       node2                                     
ora.evmd
      1        ONLINE  ONLINE       node2                                     
ora.gipcd
      1        ONLINE  ONLINE       node2                                     
ora.gpnpd
      1        ONLINE  ONLINE       node2                                     
ora.mdnsd
      1        ONLINE  ONLINE       node2                                     
bash-3.00# 
 
#修改资源的命令如下:
 
crsctl modify resource res -attr "xxxx=xxxx"

下面仅仅列举一个简单的例子,在11gR2的Solaris平台上,有一个IPMP技术,也就是IP multiple Path技术,配置多块public网卡在一个group里面,当一块网卡发生失败的时候,可以自动切换到另外一快(可以配置成使用probe-based或者link-based),关于IPMP的技术下次在做一些介绍。我们的11gR2也充分支持这一技术,前提就是在CRS管理的network resource上配置多块网卡,当其中的一块fail的时候,利用IPMP自动切换到另外一块,如果两块都不幸fail,那么利用CRS的漂移功能,把VIP和其他相应的服务和client请求漂移到另外的节点。

下面的命令演示了如何修改network资源,使之可以使用多块网卡。

bash-3.00# /u01/app/crshome/bin/crsctl stat res  ora.net1.network  -p | grep USR_ORA
USR_ORA_AUTO=static
USR_ORA_ENV=
USR_ORA_IF=e1000g0
USR_ORA_NETMASK=255.255.255.0
USR_ORA_SUBNET=10.11.191.0
bash-3.00# 
 
crsctl modify resource ora.net1.network -attr "USR_ORA_IF=e1000g0 e1000g1"
 
bash-3.00# /u01/app/crshome/bin/crsctl stat res  ora.net1.network  -p | grep USR_ORA
USR_ORA_AUTO=static
USR_ORA_ENV=
USR_ORA_IF=e1000g0 e1000g1
USR_ORA_NETMASK=255.255.255.0
USR_ORA_SUBNET=10.11.191.0
bash-3.00#

注意上面的e1000g0, e1000g1是同一个IPMP group里面的两个网卡。

This entry was posted in 数据库 and tagged , . Bookmark the permalink.