首先将光盘放进光驱
计算机—CD-ROM 双击打开 将三个文件复制到系统的某个文件夹下或是将光驱mount到/mnt
系统工具—终端(将光驱挂载到mnt文件夹下)
在终端窗口下一次键入:# mount –t iso9660 /dev/cdrom /mnt (挂载设备)
# cd /mnt (进入mnt 文件夹)
# ls (查看mnt下的文件)
安装ROSEHA,进入到mnt 目录下
运行# ./install.sh
可检查 /opt/roseha/bin 里面是否有文件存在
两个较为重要的文件 NewPass 修改密码(第一次运行需要修改密码)
运行 # ./NewPass 按照下图进行
按照提示首先 User : ha ( 管理员的用户名 ) New password : 密码 Re-enter new password
重新输入密码
在进入系统之前我们来设置一下系统的相关信息如下图所示:/etc/hosts
设置完毕后重新引导系统确定starting RoseHA dearm 服务启动正常
在/opt/roseha/bin下运行# ./hacon运行 ROSEHA 的管理界面
进入控制界面首先敲击回车选择 Connect 进入系统
User 是上面我们设置的用户名 Password也是我们设置的密码 全部输完 “OK”
出现如下界面说明连接正常
当我们没有拿到正式的licence授权之前我们就可以先享受30天的使用期,可是也需要设置一下
只要移动 Tab 键在HostName: 处将本机的主机名 和对端主机名填写正确就可以了“OK“
两边机器都需要进行设置
出现下图所示的 License Information success 说明我们可以用试用版了只要在一个月内注册正式版产品就可以了!两边的服务器都需要做相同的设置
二、配置Rose HA
1、管理界面的启动
# hacon
2、连接:
进入Tools---Connect,输入Server:localhost
User:root
Password:root
3、license号输入:
进入 Tools---License,输入HostName:左边为本机主机名,右边为远程主机名。(把左边主机名输入后,按Tab键可把光标移动到右边,输入远程主机名,点击ok)
4、创建RS232私网:
进入PrivateNet---Create RS232,把两台主机的DeviceName改成/dev/ttys0。
注:该操作在两台主机上都要做
5、创建socket 私网
进入PrivateNet---Create Socket, 选择主机用于私网的地址,输入远程主机用于私网的地址。说明:这是两台机器通讯用的IP地址(心跳IP),
注:该操作在两台主机上都要做
6、获取对方主机信息:
进入 Tools---Network,直接选中AutoGet ,OK。这样就会得到对方主机信息。
7、创建服务:
进入Services---Create,
Type:ORACLE
IP Holding NIC:分别选择两台主机所提供外界服务的网卡设备名(如:eth0),
不能与心跳网卡在同一个设备上。
Active IP Address:这是为外界数据库服务的IP(虚拟IP)地址。此地址必
须与公网的实际IP在同一网段上(也就是与在IP Holding NIC中所选择的网卡实际IP在同一网段上)。
Active SubnetMask:虚拟IP的子网掩码。
Agent Script:相应的监控脚本,如:ha_ag_oracle.x。
Start Script:相应的启动脚本,如: ora_start.sh。
Stop Script:相应的停止脚本,如:ora_stop.sh。
Active Volume:磁盘阵列两台主机共用的文件系统的设备名。如:/dev/sdb1
Backup Volume:磁盘阵列两台主机共用的文件系统的设备名。Active Volume应与Backup Volume的值相同。
Mount Point:与Active Volume,Backup Volume 值所对应的mount 点。如:/oracle
8、Oracle9.2.0的启动脚本
(1)ora_start.sh
#!/bin/sh
# This file: ora_start.sh
# Version: 4.0.1
HAHOME=`cat /etc/init.d/HAHOME`
export HAHOME
out=$HAHOME/bin/APIOUT.x
JOBNAME=$2
# When Another Server are Down, You MUST sleep awhile.
# You can change this value to meet your requirement if need.
if [ "$1" = "anotherdown" ]
then
/bin/sleep 30
fi
# DISKDEV=/dev/sda5
# MOUNTPOINT=/oracle
# $HAHOME/bin/dflush $DISKDEV
# fsck -a $DISKDEV
# if test $? -ne 0
# then
# ${out} "[INFO] fsck ${DISKDEV}......"
# fsck -yf $DISKDEV
# fi
# mount $DISKDEV $MOUNTPOINT
# mount | grep "${DISKDEV} on ${MOUNTPOINT} " >/dev/null 2>&1
# if test $? -ne 0
# then
# ${out} "[INFO] Cannot mount ${DISKDEV}."
# exit
# fi
$HAHOME/bin/ha_ag_oracle.x $JOBNAME 0
if test $? -eq 0
then
${out} "[INFO] The service has started."
exit
else
${out} "[INFO] Start Oracle server...."
su - oracle -c "$HAHOME/bin/ora_dbshut_ab.sh"
su - oracle -c "$HAHOME/bin/ora_dbstart.sh"
fi
${out} "[INFO] Start shell finished."
(2) ora_dbstart
#!/bin/sh
# This file: ora_dbstart.sh
# Version: 4.0.1
HAHOME=`cat /etc/init.d/HAHOME`
export HAHOME
if test ! "$1" -o ! "$2"
then
echo "ora_dbstart.sh: Message: ORACLE_SID LISTENER not specified."
else
ORACLE_SID=$1
LISTENER=$2
export ORACLE_SID
fi
# start Oracle Instance
# You MUST choose a Oracle setup mode to meet your requirement.
# The nether lines for Oracle Version 9 or Later
sqlplus "/ as sysdba "<
startup
exit
!
# The nether lines for Oracle Version 8 or Older
# svrmgrl <
# connect internal
# startup
# exit
# !
# start Oracle listener
lsnrctl start $2
9、Oracle9.2.0的停止脚本
(1)ora_stop.sh
#!/bin/sh
# This file: ora_stop.sh
# Version: 4.0.1
HAHOME=`cat /etc/init.d/HAHOME`
export HAHOME
out=$HAHOME/bin/APIOUT.x
JOBNAME=$2
ERRORNUMBER=$3
${out} "[INFO] The service stop because of {$ERRORNUMBER}."
# DISKDEV=/dev/sda5
# MOUNTPOINT=/oracle
$HAHOME/bin/ha_ag_oracle.x $JOBNAME 0
if test $? -eq 0
then
${out} "[INFO] Stop Oracle server immediate...."
su - oracle -c "$HAHOME/bin/ora_dbshut_im.sh"
else
${out} "[INFO] Stop Oracle server...."
su - oracle -c "$HAHOME/bin/ora_dbshut_ab.sh"
fi
sync
# $HAHOME/bin/UMOUNT $DISKDEV $MOUNTPOINT
# mount | grep "${DISKDEV} on ${MOUNTPOINT} " >/dev/null 2>&1
# if test $? -eq 0
# then
# ${out} "[WARNING] Cannot umount ${DISKDEV}."
# /sbin/reboot
# fi
${out} "[INFO] Stop shell finished."
(2) ora_dbshut_ab
#!/bin/sh
# This file: ora_dbshut_ab.sh
# Version: 4.0.1
COLUMNS=1024
export COLUMNS
HAHOME=`cat /etc/init.d/HAHOME`
export HAHOME
if test ! "$1" -o ! "$2"
then
echo "ora_dbshut_ab.sh: ORACLE_SID or LISTENER not specified."
LSNR_PID=`ps -ef | grep tnslsnr | grep -v grep | awk -F" " '{print $2}'`
else
ORACLE_SID=$1
LISTENER=$2
echo "ora_dbshut_ab.sh: ORACLE_SID=$ORACLE_SID, LISTENER=$LISTENER."
LSNR_PID=`ps -ef | grep tnslsnr | grep $LISTENER | grep -v grep | awk -F" " '{print $2}'`
fi
# Kill Oracle Listener
if [ EMPTY"$LSNR_PID" = EMPTY ]
then
echo "Not found listener process !"
else
echo "Kill oracle listener process ."
kill -9 $LSNR_PID
fi
# Stop Oracle Instance
# You MUST choose a Oracle stop mode to meet your requirement.
# The nether lines for Oracle Version 9 or Later
sqlplus "/ as sysdba "<
shutdown abort
exit
!
# The nether lines for Oracle Version 8 or older
# svrmgrl <
# connect internal
# shutdown abort
# exit
# !
三、卸载Rose HA
# mount /dev/cdrom /mnt/cdrom
# cd /mnt/cdrom/Shell
四、Rose HA常用的命令、工具及故障处理方法
1、相关命令:
查询Roseha进程的命令: #ps –ef | grep ha
hamond、hasysd、hachkd、hasvrd
停止Roseha进程的命令:#ha_kill ha
手工启动Roseha进程的命令:#./hamond
进入Roseha软件的命令:#./hacon
2、双机软件的开关机顺序
开机:先后依次开磁盘阵列,主机,备机。
关机:先后依次关备机,主机,磁盘阵列。
3、双机软件中的术语:
Bring in: 把服务带入双机,受双机软件管理。
Bring out: 把服务带出双机,不受双机软件管理。
Take over:手工切换服务。在备机动作,来接管主机服务。
Fail over: 手工切换服务。在主机动作,来提交主机服务给备机。来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21070542/viewspace-606592/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/21070542/viewspace-606592/