备份数据删除和腾讯云数据库下载脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#!/bin/bash
base_dir=/data/Mysql-BackCenter
delete_day=30
delete_log_dir=/data/log/delete
download_dir=$base_dir/ZZB-7
vardate=$(date +%Y%m%d)
datebefore=$(date -d "1 days ago" +%Y%m%d)
cdmdump=$base_dir/cdb_dump_tool 
[[ -d $delete_log_dir  ]] || mkdir -p $delete_log_dir
print_to_log(){
echo "[ $(date "+%Y-%m-%d %H:%M:%S") ] $1" >>  $delete_log_dir/delete.log
}
print_log(){
echo "[ $(date "+%Y-%m-%d %H:%M:%S") ] $1" >>  $delete_log_dir/download.log
}
function delete_file(){
delete_total_num=$(find $base_dir -type f -mtime +$delete_day |grep "tar.gz$"|wc -l)
print_to_log "开始删除$delete_day天前的数据压缩包..."
print_to_log "删除数量:$delete_total_num"
if [[ $delete_total_num -ne 0   ]];then 
for i in $(find $base_dir -type f -mtime +$delete_day |grep "tar.gz$")
do
print_to_log "开始删除: $i"
rm -f $i
if [[ $? -eq 0  ]];then
print_to_log "删除$i,成功!"
else 
print_to_log "删除$i,失败...!"
fi
done
else 
print_to_log "$delete_day天前的历史压缩数据不存在..."
fi 
print_to_log "删除结束."
}
function download_sql(){
cd $base_dir
[[  -d $download_dir/$vardate  ]] ||  mkdir  -p  $download_dir/$vardate 
$cdmdump   APPID  实例名称  $datebefore  $download_dir/$vardate  
if [[  $? -eq 0 ]];then
print_log "Download 实例名称 $datebefore 成功!"
download_file_size=$(du -sh $download_dir/$vardate  |awk '{print $1}')
print_log "$download_dir/$vardate 源目录大小: $download_file_size"
cd $base_dir/$download_dir
tar -zcf  $vardate.tar.gz    $vardate 
rm -fr $download_dir/$vardate  
else 
print_log "Download 实例名称 $datebefore 失败!"
fi 
}
delete_file
download_sql
坚持原创技术分享,您的支持将鼓励我继续创作!