摘要:数据库定期备份目标每隔分钟导出压缩并按日期存储在下每分钟后删除文件每隔分钟删除文件知识定时任务导出打包压缩按日期创建文件准备部分建立软链接必须在目录下建立软链接将导出备份到目录下将导出的打包成正式写脚本新建脚本文件往脚本里写的内容
linux数据库定期备份
目标: 每隔1分钟,导出.sql,压缩,并按日期存储在/data 下,每分钟后删除.sql文件,每隔2分钟删除.tar.gz文件
知识: 定时任务 crontab , mysqldump 导出 , tar 打包压缩, 按日期创建文件 date
准备部分
1.建立mysqldump软链接(必须在~目录下建立软链接)
ln -s /usr/local/mysql/bin/mysqldump /usr/bin/mysqldump
2.将mysql.bak.sql导出备份到~目录下
mysqldump -uroot -p123 -B mysql > ./mysql.bak.sql
3.将导出的mysql.bak.sql打包成.tar.gz
tar zcvf mysql.bak.sql.tar.gz mysql.bak.sql
正式写shell脚本
1.新建bak.sh脚本文件
vim bak.sh
往脚本里写的内容:
#!/bin/bash cd /data rm -f *.sql old=`date -d "-2 minute" +%Y%m%d%H%M` tad=`date +%Y%m%d%H%M` /usr/local/mysql/bin/mysqldump -uroot -p123 -B mysql > ./$tad.sql tar zcf $tad.sql.tar.gz $tad.sql # -f是判断文件是否存在 if [ -f /data/$old.sql.tar.gz ] then rm -rf /data/$old.sql.tar.gz fi
2.在/目录下创建一个data目录
mkdir -p /data/
3.创建定时任务:
crontab -e
4:编辑定时任务:
*/1 * * * * /data/bak.sh
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/24863.html
阅读 767·2021-10-09 09:58
阅读 634·2021-08-27 16:24
阅读 1719·2019-08-30 14:15
阅读 2376·2019-08-30 11:04
阅读 2061·2019-08-29 18:43
阅读 2166·2019-08-29 15:20
阅读 2712·2019-08-26 12:20
阅读 1612·2019-08-26 11:44