利用shell脚本定时备份日志文件

需求:每周五定时备份/var/logs下所有的日志文件,并且文件名以备份时间命名


  • 第一步创建备份脚本文件 backup_logs.sh
#!/bin/bash

#需求:每周五定时备份/var/logs/下的所有日志,并且日志名以时间命名

dates=$(date +%Y-%m-%d)
tar -zcvf /backup/logs_$dates.tat.gz /var/logs/*.log
  • 第二步创建存放备份的日志文件的目录

mkdir /backup/

  • 第三步赋予脚本执行权限

chmod +x backup_logs.sh

  • 第四步使用crontab设置定时任务,打开终端输入如下命令:

crontab -e

#添加如下内容

0 0 * * 5  /path/backup_logs.sh

可以使用shell脚本定时执行xtrabackup增量备份,具体步骤如下: 1. 安装xtrabackup工具,该工具可以备份MySQL数据库并支持增量备份。 2. 编写shell脚本,包括备份命令、备份文件存储路径、备份日志记录等内容。 3. 使用crontab命令设置定时任务,例如每天凌晨2点执行备份任务。 下面是一个简单的示例脚本,用于每天凌晨2点执行增量备份并发送备份信息邮件: ```bash #!/bin/bash # 定义备份文件存储路径 backup_dir=/data/backup/mysql # 定义备份日志文件路径 log_file=/data/backup/mysql/backup.log # 定义MySQL用户名和密码 user=root password=123456 # 定义备份文件名前缀 prefix=mysql_backup # 定义备份文件名后缀 suffix=$(date +%Y%m%d_%H%M%S) # 定义增量备份命令 incremental_command="xtrabackup --backup --target-dir=$backup_dir --incremental-basedir=$backup_dir/incremental --user=$user --password=$password >> $log_file 2>&1" # 定义完整备份命令 full_command="xtrabackup --backup --target-dir=$backup_dir --user=$user --password=$password >> $log_file 2>&1" # 判断是否存在增量备份目录,如果不存在则创建 if [ ! -d "$backup_dir/incremental" ]; then mkdir -p $backup_dir/incremental fi # 判断今天是否已经执行过增量备份,如果是则执行增量备份,否则执行完整备份 if [ -f "$backup_dir/incremental/$(date +%Y%m%d)_backup.incremental" ]; then eval $incremental_command else eval $full_command fi # 发送备份信息邮件 mail -s "MySQL Backup Report" user@example.com < $log_file ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

家有千金行止由心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值