实用指令_大数据shell_综合实例
综合实例
需求分析
-
每天凌晨2:10分备份数据库agguigDB到/data/backup/db
-
备份开始和备份结束能给出相应的提示信息
-
备份后的文件要求以备份时间为文件名,并打包成.tar.gz的形式。
比如 2018-03-12_230201.tar.gz
-
在备份的同事,检查是否有10天前备份的数据库文件。如果有就将其删除。
##因为没数据库,所以以拷贝agguigDB文件为例
#!/bin/bash
echo date
echo 开始执行------------------
namedate =`date "+%Y_%m_%d_%H%M%S"`
echo `date` 开始执行备份文件 >> /date/backup/db/log/Dbback.log
tar -zcvf /date/backup/db$namedate.tar.gz -C /home/tmp/sqldb agguigDB ###-C是临时切换工作目录;因为目标文件是绝对路径的目录,在压缩的时候会连带目录一起压缩进去,解决方法所以需要cd到当前目录(cd /home/tmp/sqld)再进行打包和压缩或者用-C参数
echo `date` 备份完成 --------------生成文件 $name.tar.gz >>/date/backup/db/log/Dbback.log
###删除10天前的文件
find /date/backup/db/ -mtime +10 -name "*.tar.gz" -exec rm -rf {}\;
echo ------------备份成功
###################最后加入定时crontab
10 2 * * * /date/backup/db/mybackup.sh