mysql数据库的备份

为了可靠期间,我们应该对mysql服务器进行定时,并将备份分发到多个备份服务器。

一般来说备份的任务交给从库比较好,毕竟主库的压力一般比较大。

在从库服务器添加crontab任务,定时执行备份脚本

#crontab -e
添加以下内容:
1 1 * * * /data/task/backmysql.sh
#vi /data/task/backupmysql.sh

在backupmysql.sh文件中添加以下脚本完成备份,并删除7天前的备份

#!/bin/bash
backupdir=/data/backup/mysql
mysql_bin_dir=/usr/local/mysql/bin
time=date +%Y%m%d%H
$mysql_bin_dir/mysqldump -u dbuser -pdbpassword dbname | gzip > $backupdir/dbname-$time.sql.gz
#
find $backupdir -name “dbname-*.sql.gz” -type f -mtime +7 -exec rm {} \; > /dev/null 2>&1