linux定时备份数据库脚本

本文介绍了一种使用bash脚本实现MySQL数据库自动化备份的方法。通过定义数据库列表、设置备份目录和归档文件名,该脚本能定期进行数据导出、压缩及清理,最后通过crontab设置定时任务,确保数据安全。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#! /bin/bash
#mysql用户信息
hostname="" 
user=""
userPWD=""
dbNames=(db1 db2 db3)
#DATE=`date ' +%Y%m%d_%H%M%S'` #日期格式(作为文件名)
DATE=`date -d "now" +%Y%m%d%H%M%S`
ARCHIVE=$DATE.tar.gz
BACKUP_DIR=/code/dbback/db/
#输出开始备份
echo "开始备份 请稍等---"
for dbName in ${dbNames[*]}
    do
      echo $dbName"--> 开始备份"
      mysqldump -h$hostname -u$user -p$userPWD $dbName > $BACKUP_DIR/$dbName.sql
      cd $BACKUP_DIR
      #压缩文件
      tar -zcvf $dbName$ARCHIVE  $dbName.sql
      #删除文件
      rm -f $dbName.sql
done
#输出备份过程消息
echo "备份完成"

1.定义一个dbback.sh把上面的脚本复制进去

2.给文件加权限  chmod u+x dbback.sh

3.crontab -e 添加定时任务  每天凌晨0点执行

    0 0 * * *  /code/dbback.sh 

4.重启cron service restart cron

   systemctl restart crond.service

5.全部取消 crontab -r

6.查看日志  tail -f /var/log/cron

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值