備份指定表:
#!/bin/bash
#設置mysql備份目錄
folder=/xx/xxx/xxx
cd $folder
day=`date +%Y%m%d`
rm -rf $day
mkdir $day
cd $day
#數據庫服務 ip
host=localhost
#用戶名
user=xxx
#密碼 #&這些需要轉義加\
password=xxxxx
#要備份的數據庫
db=xxxxx
#需要備份的 tables
tables=(xxxxx xxxxxxx xxxxxx)
echo "================ 開始備份.. ================="
# 遍歷備份的數據庫表
for t in ${tables[@]};
do
backup_file="${t}.sql"
echo ${t}
if [ ! -e "$backup_file" ];
then
echo $backup_file
rm -f "$backup_file"
fi
# 最核心的就是這句話,使用mysqldump命令執行備份
# $db $t 數據庫 相應的表
mysqldump -h${host} -u${user} -p${password} $db $t >$backup_file
done
finish_date=`date '+%Y-%m-%d %H:%M:%S'`
echo "================ 結束備份... at ${finish_date}.==="
#數據要保留的天數
days=15
cd ..
day=`date -d "$days days ago" +%Y%m%d`
#刪除 相應的文件
rm -rf $day
備份指定庫
#!/bin/bash
#設置mysql備份目錄
folder=/xxx/xxx/xxx
cd $folder
day=`date +%Y%m%d`
rm -rf $day
mkdir $day
cd $day
echo ${folder}/${day}/51design.sql.gz
#數據庫服務 ip
host=localhost
#用戶名
user=xxx
#密碼 #&這些需要轉義加\
password=xxx
#要備份的數據庫
db=xxx
# 最核心的就是這句話,使用mysqldump命令執行備份
# $db $t 數據庫
mysqldump -h${host} -u${user} -p${password} $db |gzip > ${folder}/${day}/51design.sql.gz
finish_date=`date '+%Y-%m-%d %H:%M:%S'`
echo "================ 結束備份... at ${finish_date}.==="
#數據要保留的天數
days=15
cd ..
day=`date -d "$days days ago" +%Y%m%d`
#刪除 相應的文件
rm -rf $day
參考過一篇文字寫的,不過忘了是哪個了