Xtrabackup安装备份还原过程

本文详细介绍了如何在Linux系统上安装Xtrabackup进行MySQL数据库的备份与还原操作。首先,通过下载并安装Xtrabackup,设置必要的依赖环境。接着,对MySQL配置进行调整,执行全量备份,并提供了自动化备份脚本。最后,当需要恢复数据时,先清空datadir,然后应用日志和复制数据,最后重启MySQL服务完成恢复。

一、安装。

前提是已经安装好mysql.

1、下载

根据系统选择下载适合的Xtrabackup安装包,可以是rpm包,或者完整压缩包

地址:https://www.percona.com/downloads/XtraBackup/XtraBackup-2.1.2/

这里使用压缩包直接解压使用。

2、安装依赖环境包

yum install-y libaio libaio-devel perl-Time-HiRes curl curl-devel zlib-devel openssl-develperl cpio expat-devel gettext-devel perl-ExtUtils-MakeMaker perl-DBD-MySQL.*package

3、解压安装

tar xvfpercona-xtrabackup-2.1.2-611.tar.gz
cd /percona-xtrabackup-2.1.2/bin/

cp */usr/bin

库链接:

32位系统
ln -sf /usr/lib/libssl.so.10 /usr/lib/libssl.so.6
ln -sf /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so.6

64位系统
ln -sf /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.6
ln -sf /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.6

二、备份

1、修改/etc/my.cnf文件

增加:datadir=/var/lib/mysql

service mysql restart

2、备份。

innobackupex  --user=’’ --password=’’ --default-file=/etc/my.cnf  /home/backup(存放备份文件路径) 1>/home/backup/back_log2>&1

备份完成后在/home/dbbak目录下会生成带时间的文件夹。

完成备份自动脚本:

#!/bin/bash

begintime=`date+"%Y-%m-%d %H:%M:%S"`

format_time=`date+"%Y-%m-%d-%H:%M:%S"`

#week=`date +%w`

backdir=/home/backup

user_name=root

password=123456

out_log=$backdir/Xtrabackup_log_$format_time

time_cost=$backdir/Xtrabackup_time.txt

#full backup

 echo "#####start full backup at$begintime to $backdir" >>$time_cost

 innobackupex --user=$user_name--password=$password $backdir 1>$out_log 2>&1

 endtime=`date +"%Y-%m-%d %H:%M:%S"`

 begin_data=`date -d  "$begintime" +%s`

 end_data=`date -d  "$endtime" +%s`

 spendtime=`expr $end_data - $begin_data`

 echo "it takes $spendtime sec for packingthe data directory" >>$time_cost

脚本根据实际情况修改。

 

三、还原

1、确保datadir数据库目录为空

Service mysql stop

mv /var/lib/mysql /var/lib/mysql_bak

mkdir /var/lib/mysql

 

2、还原。

innobackupex --user=’’ --apply-log /home/backup/备份文件(恢复目录日志)

innobackupex --user=’’--copy-back /home/backup/备份文件(恢复数据)

 

3.启动mysql

chown –R mysql:mysql/var/lib/mysql

service mysql start

 

 

结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值