在Linux 上配置 HA软件后,该机器上如果只有一个 IQ Server,在切换时,可以使用stop_iq 命令正常停止该服务进程;
要是有两个或多个 IQ Server,显然使用stop_iq命令是不行的,但可以用dbstop 命令来完成停止IQ Server。
HA启动脚本如下:
#!/bin/bash
IQUSR=sybiq
SYBASE=/sybiq
IQCFG=$SYBASE/sybiqsys/mp2/params.cfg
#IQDB=$SYBASE/sybiqsys/mp2/mp2.db
IQDB=mp2.db
IQUID=DBA
IQPWD=sql
IQDIR15=/sybiq/IQ-15_2
IQPROC=iqsrv15
start_iq()
{
su - $IQUSR -c "start_iq -STARTDIR /sybiq/sybiqsys/mp2 @$IQCFG -n mp2node_c -x 'tcpip{port=4888}' $IQDB"
arping -I eth2 -c 1 -s xxxx xxxx
}
stop_iq()
{
for((i=0;i<5;i++)); do
pidof $IQPROC || return 0
if [ -x "$IQDIR15/bin64/stop_iq" ] ; then
su - $IQUSR -c "stop_iq -stop all"
[ $? -eq 0 ] && return 0
else
return 0
fi
sleep 10
done
}
status_iq()
{
su - $IQUSR -c "dbinfo -c \"uid=$IQUID;pwd=$IQPWD\""
}
case $1 in
start)
start_iq
;;
stop)
stop_iq
;;
status)
status_iq
;;
*)
需要把 su - $IQUSR -c "stop_iq -stop all" 这段代码,修改为 dbstop -c "uid=dba;pwd=sql;eng=Servername;unc=yes" 。
阅读(2153) | 评论(0) | 转发(0) |