首先将光盘放进光驱
计算机— 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 重新输入密码
到这里,Rose HA的安装基本结束,但是不要心急,我们会还需要一些步骤来设置Rose HA的初始化。
初始设置Rose软件
在进入系统之前然我们来设置一下系统的相关信息如下图所示: /etc/hosts
设置完毕后重新引导系统确定 starting RoseHA dearm 服务启动正常
在 /opt/roseha/bin 下运行 # ./hacon 运行 ROSEHA 的管理界面
进入控制界面首先敲击回车选择 Connect 进入系统,User 是上面我们设置的用户名 Password 也是我们设置的密码 全部输完 “ OK”
出现如下和面说明连接正常
当我们没有拿到正式的 licence 授权之前我们就可以先享受 30 天的使用期,可是也需要设置一下
只要移动 Tab 键在 HostName: 处将本机的主机名 和对端主机名填写正确就可以了“ OK “
两边机器都需要进行设置
出现下图所示的 License Information success 说明我们可以用试用版了只要在一个月内注册正式版产品就可以了!两边的服务器都需要做相同的设置。
配置双机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
SwitchBack:NO
Oracle 9.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 <${JOBNAME}> 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 <$0> 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
Oracle 9.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 <${JOBNAME}> 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 <$0> 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 <tnslsnr>!"
else
echo "Kill oracle listener process <"$LSNR_PID">."
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
#./uninstall.sh
常见问题及注意事项
• 开机方法:
开机的时候我们必须注意到,必须先开磁盘阵列,等 磁盘阵列状态READY 后,再开主机,主机完全开启后,再把备机开启。
• 关机方法:
关机的方法则是开机的反顺序,先关备机,备机关完以后,再关主机,最后关磁盘阵列。
• Q :两台服务器上的双机软件启动后,而双机两边的资源都处于虚状态怎么办?
A : 在工作机上将资源一一点中,使资源处于高亮状态,点击工具栏上的 bring in 按钮。
• Q :安装 ROSE HA 软件时, Windows NT 对 Service Pack 版本的 要求?
A : 用 Service Pack4 , Service Pack5 或以上。
• Q :当工具栏的“ takeover”, “ failover”, “bring in”, “bring out” 等快捷按 钮均为不可用。主备机的状态保持不变,提示“ the public net is functioning, but all instances of private net are down or unavailable.”
A : 如果在“ private net ”界面下心跳线变为红色,检查心跳是否连接正常。
• Q :没有选择 Auto-Switch Back 开关时,关机后先启 关机前为备机状态的 Host ,后启 关机前为主机状态的 Host 。会出现什么情况?
A : 先启的 Host 成为主机,后启的 Host 成为备机。
• Q :两台 Host 均是在本地机上启动 ROSE HA 双机,启动双机时无法启动,并出现报错“ Fail to get remote Server's IP address from the registry ”。以上情况如何处理?
A : 以上情况是由于两台服务器上的 Administrator 的密码不相同而造成的, 将两台服务器的 Administrator 密码改为一样,重新登录即可。
• Q :双机手工切换时无法切换,软件报错信息如下:
999. [System Error] 拒绝访问 (0x5)
423. Lock Volume < E: >: Fail ”(注: E: 为公共磁盘卷)
该现象是什么原因造成的?(设数据库文件安装在公共磁盘 E 盘上)
A : 以上现象发生后,检查是否打开了察看 E 盘的窗口,或者正在使用磁 盘管理器。关掉窗口或磁盘管理器后即可正常切换。
• Q : 安装完毕后,进入控制界面,点击开始,显示 “Cluster doesn't start” , 服务无法启动,以上情况如何解决。
A : 进入“服务”,启动 cluster service ,得到提示登录时错误,然后双击该服务,点击“确定”,即可。
• 其它重要的注意事项:
1.在安装双机软件以后,数据库的服务的启 / 停都应该通过双机软件的 Bring In (启动服务)和 Bring Out (停止服务)功能来实现,不要使用数据库自带的工具软件来进行
2 .心跳线的(私用网) IP 地址和公用网 IP 最好设置在不同的网段。