用crs构建mysql高可用_转:利用Oracle CRS搭建应用的高可用集群-3

二、Oracle 集群软件资源的手工注册

1. 注销crs本身自带的ons、gsd、vip资源

root@rac01 # crs_stop -all

Attempting to stop `ora.rac01.gsd` on member `rac01`

Attempting to stop `ora.rac01.ons` on member `rac01`

Attempting to stop `ora.rac02.gsd` on member `rac02`

Attempting to stop `ora.rac02.ons` on member `rac02`

Stop of `ora.rac02.gsd` on member `rac02` succeeded.

Stop of `ora.rac02.ons` on member `rac02` succeeded.

Stop of `ora.rac01.gsd` on member `rac01` succeeded.

Stop of `ora.rac01.ons` on member `rac01` succeeded.

Attempting to stop `ora.rac01.vip` on member `rac01`

Attempting to stop `ora.rac02.vip` on member `rac02`

Stop of `ora.rac02.vip` on member `rac02` succeeded.

Stop of `ora.rac01.vip` on member `rac01` succeeded.

root@rac01 # crs_unregister ora.rac01.gsd

root@rac01 # crs_unregister ora.rac01.ons

root@rac01 # crs_unregister ora.rac01.vip

root@rac01 # crs_unregister ora.rac02.vip

root@rac01 # crs_unregister ora.rac02.ons

root@rac01 # crs_unregister ora.rac02.gsd

root@rac01 # crs_stat -t

CRS-0202: No resources are registered.

2.创建虚拟IP资源:

root@rac01 # crs_profile -create havip -t application -a /oracle/crs/bin/usrvip \

-o oi=e1000g0,ov=10.198.94.139,on=255.255.248.0

root@rac01 # crs_register havip

root@rac01 # crs_setperm havip -o root

root@rac01 # crs_setperm havip -u user:oracle:r-x

root@rac01 # crs_stat -t -v

Name Type R/RA F/FT Target State Host

----------------------------------------------------------------------

ha_vip application 0/1 0/0 OFFLINE OFFLINE

root@rac01 # crs_start havip

root@rac01 # crs_stat -t -v

Name Type R/RA F/FT Target State Host

----------------------------------------------------------------------

havip application 0/1 0/0 ONLINE ONLINE rac01

3.准备控制其他资源启动、关闭、检查的脚本文件dg.sh/fs.sh/db.sh/lsnr.sh

这四个脚本文件内容参考“五-3/4/5/6”部分

对crs_profile命令中的选项和参数做简单说明:

(1) 选项-r定义了该资源所依赖的资源,在下面的例子中,资源oradata_mount启动时依赖于

disk_group先 启动,需要停止disk_group的时候必须先停止资源oradata_mount,

资源orcl_db的启动则同时依赖于oradata_mount/disk_group/havip/listener;

(2) 参数-o 包括:ci的意思是crs对资源状态的监测间隔(check interval),单位为秒;

ra : crs重启资源的尝试次数,RESTART_ATTEMPTS,次数到达以后将重新分配;

fi : 资源状态出现错误以后,crs的尝试间隔,FAILURE_INTERVAL,单位是秒;

ft : 资源状态出现错误以后,crs的尝试次数,FAILURE_THRESHOLD;

这些参数可以使用默认值,分别是60秒/1/0秒/0。

(3) 参数-a 是指ACTION_SCRIPT,参数值为资源启动、关闭、监测的脚本,脚本固定的三个参数为

start/stop/check;

管理数据库监听的部分:

修改$ORACLE_HOME/network/admin/listener.ora文件,

将其中(HOST = rac01 )部分修改成(HOST = 10.198.94.139 ) (虚拟IP地址)

crs_profile -create listener -t application -a /oracle/crs/crs/public/lsnr.sh -r havip -o \

ci=180,ra=6,ft=2,fi=12

crs_register listener

crs_setperm listener -o root

crs_setperm listener -u user:oracle:r-x

crs_start listener

管理磁盘组和逻辑卷的部分:

crs_profile -create disk_group -t application -a /oracle/crs/crs/public/dg.sh -r havip -o \

ci=180,ra=6,ft=2,fi=12

crs_register disk_group

crs_setperm disk_group -o root

crs_setperm disk_group -u user:oracle:r-x

注:本身磁盘组的启动并不依赖于虚拟IP的启动,这里之所以设置两者的依赖关系,

是为了防止虚拟IP在一个节点启动,而磁盘组在另外一个节点启动,造成资源不一致的情况出现。

管理文件系统的部分:

crs_profile -create oradata_mount -t application -a /oracle/crs/crs/public/fs.sh -r disk_group -o \

ci=180,ra=6,ft=2,fi=12

crs_register oradata_mount

crs_setperm oradata_mount -o root

crs_setperm oradata_mount -u user:oracle:r-x

管理数据库实例的部分:

crs_profile -create orcl_db -t application -a /oracle/crs/crs/public/db.sh -r \

"oradata_mount listener" -o ci=180,ra=6,ft=2,fi=12

crs_register orcl_db

crs_setperm orcl_db -o root

crs_setperm orcl_db -u user:oracle:r-x

crs_start orcl_db

4.确保脚本具有执行属性,并把public 和profile的内容拷到第二个节点上。

# chmod +x /oracle/crs/crs/public/*

# rcp -r -p /oracle/crs/crs/public/* rac02:/oracle/crs/crs/public/

5.启动所有的资源

下面可以看到,在crs启动和关闭资源的过程中,其顺序是按照前面定义的资源依赖关系进行的:

root@rac01 # crs_stop -all

Attempting to stop `orcl_db` on member `rac01`

Stop of `orcl_db` on member `rac01` succeeded.

Attempting to stop `oradata_mount` on member `rac01`

Stop of `oradata_mount` on member `rac01` succeeded.

Attempting to stop `disk_group` on member `rac01`

Stop of `disk_group` on member `rac01` succeeded.

Attempting to stop `listener` on member `rac01`

Stop of `listener` on member `rac01` succeeded.

Attempting to stop `havip` on member `rac01`

Stop of `havip` on member `rac01` succeeded.

root@rac01 # crs_start -all

Attempting to start `havip` on member `rac01`

Start of `havip` on member `rac01` succeeded.

Attempting to start `listener` on member `rac01`

Start of `listener` on member `rac01` succeeded.

Attempting to start `disk_group` on member `rac01`

Start of `disk_group` on member `rac01` succeeded.

Attempting to start `oradata_mount` on member `rac01`

Start of `oradata_mount` on member `rac01` succeeded.

Attempting to start `orcl_db` on member `rac01`

Start of `orcl_db` on member `rac01` succeeded.

检查资源状态是否正常:

oracle@rac01 $ crs_stat -t

Name Type Target State Host

------------------------------------------------------------

disk_group application ONLINE ONLINE rac01

havip application ONLINE ONLINE rac01

listener application ONLINE ONLINE rac01

oradata_mount application ONLINE ONLINE rac01

orcl_db application ONLINE ONLINE rac01

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值