ITPub博客

首页 > Linux操作系统 > Linux操作系统 > autoswitch Datagurad script

autoswitch Datagurad script

原创 Linux操作系统 作者:muxinqing 时间:2015-04-03 12:58:03 0 删除 编辑
分享给有需要的人
下面脚本通过网络判断主机是否被关机来执行自动切换

添加root对等信任

mxq1-> mkdir ~/.ssh

mxq1-> chmod 700 ~/.ssh

mxq1-> ssh-keygen -t rsa

mxq1-> ssh-keygen -t dsa

mxq2-> mkdir ~/.ssh

mxq2-> chmod 700 ~/.ssh

mxq2-> ssh-keygen -t rsa

mxq2-> ssh-keygen -t dsa

mxq1-> cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys

mxq1-> cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys

mxq1-> ssh mxq2 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys

mxq1-> ssh mxq2 cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys

mxq1-> scp ~/.ssh/authorized_keys mxq2:~/.ssh/authorized_keys


下面脚本

#!/bin/bash
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin
umask 022
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
LD_LIBRARY_PATH=/usr/lib:/usr/X11R6/lib
ORACLE_BASE=/filedata/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0.3/db_1
ORACLE_SID=oracle11
LD_LIBRARY_PATH=$ORACLE_HOME/rdbms/lib:$ORACLE_HOME/lib:$LD_LIBRARY_PATH
PATH=$ORACLE_HOME/bin:$PATH
export PATH LD_LIBRARY_PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID
#export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export PATH

#use ssh decide network status
#decide no 0 network at questio
#RETVAL return 0 AUTO SWITCH DATAGURAD
#It didn't gap execute
owner=oracle
ssh mx date >> /home/oracle/oracle.log 2>&1  
RETVAL=$?     
if [ $RETVAL -eq 0 ]
then
echo "remote service active "

else
echo "PRIMARY Host is down, please deal with as soon as possible"|mail -s 'dgexception monitoring' 邮件@qq.com
  echo -n "input:YES /switch NO/Don't switch:"
  read -t 5 verdict
 if [ $verdict = YES ]; then
 echo "AUTO SWITCH DATAGURAD"
su - $owner -c "sqlplus /nolog" << EOF >> /home/oracle/oracle.log
connect / as sysdba
host date
host sleep 1m
host date

ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;
ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSION SHUTDOWN;
ALTER DATABASE OPEN;
exit
EOF
 elif [ $verdict = NO ]; then
echo " not switch "

 else
 echo " not switch "

 fi
fi

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29065182/viewspace-1485098/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: ASM磁盘头
请登录后发表评论 登录
全部评论

注册时间:2014-01-14

  • 博文量
    143
  • 访问量
    1248164