标签:
1、首先从官网上http://www.percona.com/下载较新版本的xtrabackup
percona-xtrabackup-2.2.7-5050-Linux-x86_64.tar.gz
2、检查服务器是否安装了MYSQL,如果没有就要安装好MYSQL
3、开始安装xtrabackup
1)解压
tar -zxvf percona-xtrabackup-2.2.7-5050-Linux-x86_64.tar.gz
2)拷贝innobackupex、 xtrabackup工具到/usr/bin
3)备份并压缩打包
innobackupex --user=$user --password=$password --defaults-file=/opt/mysql5621/my.cnf --database=$db --stream=tar $backupdir 2>$backupdir/$log|gzip 1>$backupdir/$str
4、说明
--database=zztx单独对zztx数据库做备份,若是不添加此参数那就是对全库做备份
2>/data/back_data/zztx.log输出信息写入日志中
1>/data/back_data/zztx.tar.gz 打包压缩存储到该文件中
5、备份脚本
#!/bin/bash
echo "开始备份"`date`
DATE=`date +%y%m%d%H%M`
db=sms_db
user=backupuser
password=backuP_#
backupdir=/mysql/databackup
log=$db‘_‘$DATE.log
str=$db‘_‘$DATE.tar.gz
innobackupex --user=$user --password=$password --defaults-file=/opt/mysql5621/my.cnf --database=$db --stream=tar $backupdir 2>$backupdir/$log|gzip 1>$backupdir/$str
echo "备份完毕..."`date`
6、恢复数据
1)先停止数据库:
/opt/mysql5621/bin/mysqladmin -uroot -p --shutdown
2)解压
tar -izxvf sms_db_1501120000.tar.gz -C /data/back_data/db/(没有db,需要mkdir /data/back_data/db/)
3)恢复
innodbbackupex --user=root --password --defaults-file=/opt/mysql5621/my.cnf --apply-log /data/back_data/db/
innodbbackupex --user=root --password --defaults-file=/opt/mysql5621/my.cnf --copy-back /data/back_data/db/
--apply-log选项的命令是准备在一个备份上启动mysql服务
--copy-log选项的命令是从备份目录拷贝数据、索引、日志到my.cnf文件里规定的初始位置
4)赋权
chown -R mysql.mysql /var/lib/mysql/*
5)重启数据库
/opt/mysql5621/bin/mysqld_safe --basedir=/opt/mysql5621/ --datadir=/mysql/data --user=mysql
标签:
原文地址:http://www.cnblogs.com/janehoo/p/5822428.html