首先將光盤放進光驅
計算機— 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 最好設置在不同的網段。