#!/bin/bash
export LANG=en_US.UTF-8
#mysql安装目录
mysqlHome=/usr/local/mysql
backupDir=/home/mysql/backup/data
logFile=/home/mysql/backup/backup.log
#数据库账号密码
dbUsername=root
dbPassword=123456
#需要备份的库
backupDBs=(dbname1 dbname2 dbname3)
#备份保留次数
backupMaxHistory=10
cd $backupDir
for backupDB in ${backupDBs[@]}; do
dumpFile=$backupDB.$(date +%Y%m%d%H%M%S).sql
dumpGzFile=$dumpFile.tgz
nowTime=$(date +"%Y-%m-%d %H:%M:%S")
echo $nowTime - $dumpGzFile backup start >>$logFile
$mysqlHome/bin/mysqldump -u$dbUsername -p$dbPassword $backupDB >$dumpFile
tar -czvf $dumpGzFile $dumpFile
rm -f $dumpFile
count=$(ls -l $backupDB.*.tgz | wc -l)
if [ $count -gt $backupMaxHistory ]; then
file=$(ls -l $backupDB.*.tgz | awk '{print $9}' | awk 'NR==1')
rm -f $file
fi
nowTime=$(date +"%Y-%m-%d %H:%M:%S")
echo $nowTime - $dumpGzFile backup end >>$logFile
done
Linux MySQL备份脚本
最新推荐文章于 2024-07-19 22:18:11 发布