Xtrabackup备份脚本🥌
 
xtrabackup全量备份脚本
[root@VM-16-10-centos ~]# vim mysql-full-backup.sh 
#!/bin/bash
export MYSQL_HOME=/usr/local/Percona-Server-5.5.21-rel25.0-227.Linux.x86_64/
export PATH=$MYSQL_HOME/bin:$PATH
mysql_backup_dir=/data/mysql/
mysql_username="root"
mysql_password="Moonlight"
cd $mysql_backup_dir
lastincrementfolder=`ls -l|grep ^d|tail -n 1 | awk '{print $9}'`
timeStart=$(date '+%F-%H-%M-%S')
logfile=full-$timeStart.log
#innobackupex   --defaults-file=/etc/my.cnf  --user=$mysql_username --password=$mysql_password   $mysql_backup_dir 2> "$logfile" 
#压缩数据
#innobackupex --user=$mysql_username --password=$mysql_password $mysql_backup_dir 2> "$logfile" | gzip > $mysql_backup_dir/`date +%F-%H-%M-%S`.sql.gz
innobackupex --user=$mysql_username --password=$mysql_password $mysql_backup_dir  --stream=tar 2> "$logfile" | gzip > $mysql_backup_dir/$timeStart.sql.gz
 
xtrabackup增量备份脚本
[root@VM-16-10-centos ~]# cat mysql-incramental-backup.sh 
#!/bin/bash
export MYSQL_HOME=/usr/local/Percona-Server-5.5.21-rel25.0-227.Linux.x86_64/
export PATH=$MYSQL_HOME/bin:$PATH
mysql_backup_dir=/data/mysql/
mysql_username="root"
mysql_password="Moonlight"
cd $mysql_backup_dir
lastincrementfolder=`ls -l|grep ^d| tail -n 1 | awk '{print $9}'`
timeStart=$(date '+%F-%H-%M-%S')
logfile=increment-$timeStart.log
innobackupex --incremental $mysql_backup_dir --incremental-basedir=$lastincrementfolder --user=$mysql_username --password=$mysql_password --stream=tar  2> "$logfile" |gzip > $mysql_backup_dir/$timeStart.sql.gz
#压缩数据
#innobackupex --incremental $mysql_backup_dir --incremental-basedir=$lastincrementfolder --user=$mysql_username --password=$mysql_password 2> "$logfile" |gzip >$mysql_backup_dir/`date +%F-%H:%M:%S`.sql.gz
 
 crontab 计划任务
[root@localhost ~]# crontab  -e
0 2 * * 0      /root/mysql-full-backup.sh   (注意脚本路径)
0 2 * * 1-6    /root/mysql-incramental-backup.sh