使用Shell脚本定时备份远程数据库数据

  • A+
所属分类:Centos MySQL

在项目后,我们需要对正式的数据进行固定的备份,用于数据库灾备或者数据分析等。接下来,我们来介绍如何使用shell 备份数据库:

#!/bin/bash

#保存备份个数,备份31天数据
expire_day=10
#备份保存路径
backup_dir=/data/mysqlbackup
#日期
dd=`date +%Y%m%d%H`
#备份工具
tool=mysqldump
#用户名
username=数据库用户名
#密码
password="数据库密码"
#将要备份的数据库
database_name=数据库
host="数据库地址"

#如果文件夹不存在则创建
if [ ! -d $backup_dir ];
then
    mkdir -p $backup_dir;
fi

if [ ! -d $sun_backup_dir ];
then
    mkdir $sun_backup_dir;
fi

#简单写法  mysqldump -u root -p123456 users > /root/mysqlbackup/users-$filename.sql
#$tool -h $host  -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql
$tool -h $host -u$username -p$password $database_name | gzip > $backup_dir/$database_name.dump.$dd.sql.gz


#判断现在的备份日期
find $backup_dir/ -mtime +$expire_day -type d -exec rm -rf {} \;

之后我们使用定时任务 crontab 定时执行此脚本即可完成数据库的备份

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: