innobackupex全量备份和增量备份脚本

简介:

# 每周六凌晨一次的全备份。

20 4 * * 6 /root/fullbackupdata.sh


数据库全备份的脚本

#!/bin/bash


dateformat=$(date +"%Y-%m-%d")


direc=/mnt/backup

fulldir=$direc/full


logdir=/home/backuplog

fulllog=$logdir/fulllog

applylog=$logdir/applylog


User=root

PassWord=root




for i in $fulllog $applylog $fulldir

do

        if [ ! -d $i ]; then

                mkdir -pv $i

        fi

done



if [ ! -d $fulldir/$dateformat ]; then

        innobackupex --user=$User --password=$PassWord --no-timestamp $fulldir/$dateformat >> $fulllog/fullbackup.log.$dateformat 2>&1 &

        #innobackupex --user=$User --password=$PassWord --apply-log --use-memory=1024MB  $fulldir/$dateformat >> $applylog/apply.log.$dateformat 2>&1 &

else

        echo "Don't backup database, because of directroy not found!" >> $logdir/error_full.log.$dateformat 2>&1 &

        exit 1

fi




# 每天一次的全增量(以全备份为基础的增量),每两个小时一次的增量备份(以全增量为基础的增量)

10 1-23/2 * * * /root/incrementbackupdata.sh


#!/bin/bash


# define some variables

User=root

PassWord=root

dateFull=$(date +"%Y-%m-%d")

datetime=$(date +"%Y-%m-%d")

dateIncre=$(date +"%Y-%m-%d_%H-%M-%S")


direc=/mnt/backup

fulldir=$direc/full

Increment=$direc/increment


logdir=/home/backuplog

incrementlog=$logdir/incrementlog


# The first incremental backup of a week's full backup.

if [ ! -d $Increment/$dateFull ]; then

        mkdir -p $Increment/$dateFull

        fullfilename=$(ls -lt $fulldir | sed -n 2p | awk '{print $9}')

        innobackupex --user=$User --password=$PassWord --use-memory=1024MB --no-timestamp --incremental $Increment/$dateFull/$datetime --incremental-basedir=$fulldir/$fullfilename >> $incrementlog/increment.log.$dateFull 2>&1 &

fi


# Incremental backups from the first incremental backups.

if [ -d $Increment/$dateFull/$dateFull ]; then

        cd $Increment/$dateFull

        fileName=$(ls -lt $Increment/$dateFull | sed -n 2p | awk '{print $9}')

        innobackupex --user=$User --password=$PassWord --use-memory=1024MB --no-timestamp --incremental $Increment/$dateFull/$dateIncre --incremental-basedir=$Increment/$dateFull/$fileName>> $incrementlog/increment.log.$dateIncre  2>&1 &

fi


本文转自 Tenderrain 51CTO博客,原文链接:http://blog.51cto.com/tenderrain/1748509

相关文章
|
2月前
|
存储 数据库
全量备份和增量备份
全量备份和增量备份
53 6
|
5月前
|
SQL 缓存 关系型数据库
MYSQL增量备份和全量备份脚本
MYSQL增量备份和全量备份脚本
xtrabackup 增量,全备份,恢复备份
mysql5x 版本对应xrtabackup2.4
154 0
|
关系型数据库 MySQL
使用Xtrabackup完整备份中恢复单表
MySQL目前采取的备份策略都是xtrabackup全备+binlog备份,如果当某天某张表意外的删除,那么如何快速从xtrabackup全备中恢复单表呢?从MySQL 5.6版本开始,支持可传输表空间(Transportable Tablespace),那么利用这个功能就可以实现单表的恢复,同样利用这个功能还可以把innodb表移动到另外一台服务器上。
4422 0
|
SQL 监控 关系型数据库
完全备份和增量备份
简介 1·完全备份与增量备份的概念 2·使用 mysqldump 完全备份 3·使用 mysqldump 进行表结构备份 4·完全备份恢复的两种方法 5·使用 flush logs 进行增量备份 6·增量备份恢复 7·基于时间点与位子的恢复 8·MySQL 备份思路 完全备份与增量备份的概念 1·MySQL 完全备份:是对整个数据库的备份、数据库结构和文件结构的备份,保存的是备份完成时刻的数据库,它也是增量备份的基础。
1847 0
|
网络协议 关系型数据库 MySQL
Xtrabackup实现数据的备份与恢复
目录 Xtrabackup实现数据的备份与恢复 Xtrabackup介绍 Xtrabackup优点 Xtrabackup备份原理 Xtrabackup增量备份介绍 Xtrabackup安装 创建测试数据 ...
1218 0
|
关系型数据库 MySQL 网络协议