Chinaunix首页 | 论坛 | 博客
  • 博客访问: 45494
  • 博文数量: 26
  • 博客积分: 1440
  • 博客等级: 上尉
  • 技术积分: 270
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-17 23:21
文章分类

全部博文(26)

文章存档

2010年(26)

我的朋友
最近访客

分类:

2010-02-22 10:16:22

脚本很简单,放在这留个记号吧。





#!/bin/bash

########################################################

# FILE:slave_db_bak.sh

# DATE:2010-02-07

# SUMMARY:backup local DB with mysqldump

# CREATOR:

########################################################


CMDPATH=/usr/local/mysql/bin
L_DATE=$(date +%F)
HOST=$(cat /proc/sys/kernel/hostname)
DATA_PATH=/data/backup
LOG=$DATA_PATH/${HOST}-mysql-backup.log
PASSWD='#!'
COM="$CMDPATH/mysqldump -uroot -p${PASSWD} --single-transaction --hex-blob --all-database"

#Check DATA_PATH ,if not exist then make it.

[[ -d $DATA_PATH ]] || mkdir -p $DATA_PATH

#Check slave status.

STATUS1=$($CMDPATH/mysql -uroot -p${PASSWD} -e "show slave status\G" | grep -E -c 'Slave_IO_Running: Yes')
STATUS2=$($CMDPATH/mysql -uroot -p${PASSWD} -e "show slave status\G" | grep -E -c 'Slave_SQL_Running: Yes')

if [[ $STATUS1 -eq 1 ]] && [[ $STATUS2 -eq 1 ]]
then

   echo "Slave is ok,wait seconds......"
   ($COM > $DATA_PATH/${HOST}-all-${L_DATE}-$(date +%H%M%S).sql && echo "$L_DATE $(date +%T) Backup is ok!" >> $LOG || echo "$L_DATE $(date +%T) Backup error!" >> $LOG)
   echo "Mysql Backup complete."

else
   [[ $STATUS1 -eq 0 ]] && [[ $STATUS2 -eq 1 ]] && echo "$L_DATE $(date +%T) Slave IO Running error!" >> $LOG
   [[ $STATUS1 -eq 1 ]] && [[ $STATUS2 -eq 0 ]] && echo "$L_DATE $(date +%T) Slave SQL Running error!" >> $LOG
   [[ $STATUS1 -eq 0 ]] && [[ $STATUS2 -eq 0 ]] && echo "$L_DATE $(date +%T) Slave SQL & IO Running error!" >> $LOG

fi


阅读(413) | 评论(0) | 转发(0) |
0

上一篇:初试 perl mysql DBI

下一篇:/proc/stat 的解释

给主人留下些什么吧!~~