首页 / 数据库 / MySQL / mysql主从+keepalived线上恢复解决方案
mysql主从+keepalived线上恢复解决方案2014-06-23最近一个项目需要做一个mysql+keepalived高可用主从同步,配起来当然轻车熟路,但想到如何在主库挂掉,从库接管后,以最快的速度恢复数据,并让主库重新接管,所以整理了下思路,编写了如下脚本,供大家参考mysql主从,以及keepalived高可用配置本博传送门:http://showerlee.blog.51cto.com/2047005/1220801http://showerlee.blog.51cto.com/2047005/1188549一.备份从库当前数据库注:以下的所有配置需要在数据库未运转状态下进行,建议做一个iptables规则禁止非管理员IP访问主从服务器IP,以及VIP,这样既能保证管理员可SSH远程登陆配置,又能恢复主从环境,待配置完成后解除禁止即可。# vi /etc/rc.d/mysql_bak.sh-------------------------#!/bin/bash# 环境变量PATH=/bin:/usr/bin:/sbin:/usr/sbin; export PATHexport LANG=C# 日常备份目录basedir=/backup/daily/# 数据库账户user=rootpasswd=123456# mysql备份目录mysql_db_bak=$basedir/$(date +%F_%H%M)[ ! -d "$mysql_db_bak" ] && mkdir -p $mysql_db_bak# mysql下所有库名称db_name=("information_schema" "mysql" "test_db1" "test_db2" "test_db3" "test_db4")# 1.备份MySQL数据库for((i=0; i!=${#db_name[@]}; ++i)){mysqldump -u $user -p$passwd --opt --skip-lock-tables --flush-logs --database ${db_name[i]} > $mysql_db_bak/${db_name[i]}.sql}-------------------------