数据库mysql 自动分库分表备份脚本


        当我们在公司中遇到数据库的备份,项目比较多,经常进行数据库和表的添加工作,那么我们


想要让系统脚本自动进行查询数据库里的库和表结构,然后进行自动的定期进行数据库和表的定期份,


那么我们该如何实现呢,大家看看以下的脚本:



vi mysql_backup.sh


#!/bin/sh

#backup tiandao bbs edoing 

#coding tonye.li

MYUSER=root

MYPASS=meidi

SOCKET=/data/3306/mysql.sock

MYCMD="mysql -u$MYUSER -p$MYPASS -S $SOCKET"

MYDUMP="mysqldump -u$MYUSER -p$MYPASS -S $SOCKET"

for database in `$MYDUMP -e "show databases;"|sed '1,2d'|egrep -v "mysql|schema"`

do 

    mkdir -p /server/backup/${database} 

    for table in `$MYCMD -e "show tables from $databases;"|sed '1d'`

    do

    $MYDUMP $database $table|gzip >/server/backup/${database}_${table}$(date +$F).sql.gz

    done

done



    此脚本过滤掉了系统自带的两个数据库(mysql,schema),脚本可能还需要根据不同的环境进行改

变,希望大家互相学习,谢谢!