#!/bin/bash
dateTime=$(date +%Y_%m_%d) #当前系统时间
basedir=/usr/local/mysql/backup/mysql #备份文件到该路径
backtmp=/usr/local/mysql/backup/mysql/zz/ #备份中转目录
backName=$dateTime.tar.gz #备份文件名
remotePath=/usr/local/mysql/data/bf #远程服务器路径
username=root # mysql用户
password='密码' # mysql密码
mkdir -p $basedir #创建目录,若目录存在则不创建
mkdir -p $backtmp
cd $backtmp
#mysqldump -u$username -p$password $tbname1 > $backtmp$tbname1.sql
#mysqldump -u$username -p$password $tbname2 > $backtmp$tbname2.sql
for db in `mysql -u "$username" -p"$password" -s -e "show databases"`
do
mysqldump -u$username -p$password -q --single-transaction -B > $backtmp$db.sql$dateTime
done
mysql -u "$username" -p"$password" -s -e "flush logs"
cd ..
#tar -zcvf $backName $backtmp #压缩备份数据库
#rm -rf $backtmp*.sql #删除备份到中转的数据
#rm -f $backName #删除按日期备份的文件
#mv $backName $basedir #移动到备份路径
find /usr/local/mysql/backup/mysql -mtime 30 -name "*.gz" -exec rm -rf {} \;
scp /usr/local/mysql/backup/mysql/zz/* root@远程IP地址:$remotePath #上传到远程服务器