脚本检测mariadb主数据库可用性,实时切换到从数据库
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了脚本检测mariadb主数据库可用性,实时切换到从数据库相关的知识,希望对你有一定的参考价值。
编写shell脚本 检测主mysql服务可用性,不可用则修改/etc/hosts文件中的 ip与db服务器对应关系
#!/bin/bash
#20180911
#author by efoni
DB_SERVER=(
192.168.181.129 #master
192.168.181.130 #slave
)
MARIADB_HOST="mariadb.fnqh"
echo date +%Y-%m-%d-%H:%M:%S
DB_IP=ping -c 2 $MYSQL_HOST|awk ‘NR==1 {print $3}‘|sed ‘s/(//g;s/)//g‘
mysql -h$MARIADB_HOST -uroot -pxxxxxx -e "show databases;" >>/dev/null 2>&1
CODE="$?"
while [$CODE -ne 0]
do
if ["$DB_IP" == "${DB_SERVER[1]"];then
sed -i "s/$DB_IP/${DB_SERVER[0]}/g" /etc/hosts
else
sed -i "s/$DB_IP/${DB_SERVER[1]}/g" /etc/hosts
fi
CODE=0
done
后台运行此脚本:
screen进入后台运行
输入while sleep 2;do sh auto_mariadb_monitor.sh ;done
或者nohup sh auto_mariadb_monitor.sh &后台运行
即可每隔2秒检测可用性并执行切换脚本。
以上是关于脚本检测mariadb主数据库可用性,实时切换到从数据库的主要内容,如果未能解决你的问题,请参考以下文章