#分库分表备份
#!/bin/bash
day=`date +%F-%H`
user="root"
pass=123456
backfile=/server/backup
[ -d $backfile ] || mkdir -p $backfile
cmd="mysql -u$user -p$pass"
dump="mysqldump -u$user -p$pass -x -F -R"
dblist=`$cmd -e "show databases;"|sed 1d|grep -E -v "*_schema|mysql|test"`
for db_name in $dblist
do
tablest=`$cmd -e "show tables from $db_name;"|sed 1d`
for tname in $tablest
do
mkdir -p $backfile/$db_name/
$dump $db_name $tname|gzip >$backfile/$db_name/${tname}_${day}.sql.gz
done
mysqldump -u ${user} -p${pass} -x -B ${db_name}>/backup/${db_name}>/backup/${db_name}-${day}.sql
done
核心:mysql -e; mysqldump