shell脚本+crontab定时备份最近十天数据库实例

1、创建数据库备份文件存储目录,如/data/backup/mysqldata

mkdir -p /data/backup/mysqldata

2、创建shell脚本。如/data/shell/backup_mysql.sh

mkdir -p /data/shell

touch backup_mysql.sh

进入编辑模式。代码实例如下:

#!/bin/bash

backupdir='/data/backup/mysqldata'

#delete old db

rm -f $backupdir/adserver_$(date -d -10day +%Y%m%d).zip

#backup  db

/usr/local/mysql/bin/mysqldump -uroot -pyourpass adserver --skip-lock-tables>$backupdir/adserver_$(date +%Y%m%d).sql

zip $backupdir/adserver_$(date +%Y%m%d).zip $backupdir/adserver_$(date +%Y%m%d).sql

rm -f $backupdir/adserver_$(date +%Y%m%d).sql

:wq,保存。下面解释上面执行过程:

1)定义备份文件保存的目录;

2)删除十天之外的备份文件;

3)/usr/local/mysql/bin/mysqldump -uroot -pyourpass adserver --skip-lock-tables>$backupdir/adserver_$(date +%Y%m%d).sql,备份数据库。执行过程中涉及选择用户名密码,和备份的数据库,--skip-lock-tables跳过锁表。

4)将.sql为后缀的备份文件进行压缩,目的是节省服务器空间。

5)再将源.sql文件进行删除。

3、crontab -e进入编辑crontab服务,设置定时执行数据备份。

00 03 * * * bash /data/shell/backup_mysql.sh

上脚本代码设置的每天凌晨3点钟的时候进行备份操作。

重启crontab服务:service crond restart

备份过程到此结束了。下面展示一下执行的结果


shell脚本+crontab定时备份最近十天数据库实例_第1张图片

你可能感兴趣的:(shell脚本+crontab定时备份最近十天数据库实例)