MySQL:分库分表备份脚本

  • 2016-02-22
  • 48
  • 0
  • 0

脚本内容如下:

#!/bin/sh
# MySQL备库专用用户,需要相关权限
MYUSER=
MYPASS=

SOCKET=/data/3306/mysql.sock
MYLOGIN=`mysql -u${MYUSER} -p${MYPASS} -S ${SOCKET}`
MYDUMP=`mysqldump -u${MYUSER} -p{$MYPASS} -S ${SOCKET} -B`

# 过滤带有Data,schema,mysql库
DATABASE=$($MYLOGIN -e "show databases;" |egrep -vi "Data|_schema|mysql")

# 分库分表备份
for dbname in $DATABASE
do
   MYDIR=/data/backup/$dbname
   [ ! -d $MYDIR ] && mkdir -p $MYDIR
   $MYDUMP $dbname|gzip >$MYDIR/${dbname}_$(date +%F).sql.gz
done

评论

还没有任何评论,你来说两句吧