编写脚本
#!/bin/bash
name="www" #你代码文件夹的名称
backup_dir="/alidata/$name" #备份路径,看个人喜好,自己命名
time="$(date +"%Y%m%d%H%M%S")" #每天备份时间戳
#cd /alidata/www #打开代码所在的目录,请修改.这里我没有用。
tar -zvcf /data/codebak/$name"_"$time.tar.gz $backup_dir #打包备份
db_user="root" #数据库用户名
db_passwd="123456" #数据库密码
db_name="air" #数据库名称
# the directory for story your backup file.you shall change this dir
mysql_dir="/data/mysqlbak"
# date format for backup file (dd-mm-yyyy)
#time="$(date +"%Y%m%d%H%M%S")"
#mysqldump要写全路径,否则在crontab中执行不了。
/alidata/server/mysql-5.6.21/bin/mysqldump -u$db_user -p$db_passwd $db_name > "$mysql_dir/$db_name"_"$time.sql"
find /data/codebak/ -mtime +7 -name "*.tar.gz" -exec rm -rf {} \;
find /data/mysqlbak/ -mtime +30 -name "*.sql" -exec rm -rf {} \;
查找文件,删除7天前的备份代码,30天前的数据库备份文件。