欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

XtraBackup安装及使用

程序员文章站 2022-05-16 22:07:40
...

Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很

简介:

Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品。

Xtrabackup有两个主要的工具:xtrabackup、innobackupex

(1)xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表

(2)innobackupex-1.5.1则封装了xtrabackup,是一个脚本封装,所以能同时备份处理innodb和myisam,但在处理myisam时需要加一个读锁

(3)使用帮助::start

环境:CentOS 5.4,xtrabackup-1.6.tar.gz

1、首先从下载

wget

2、检查服务器是否安装了Mysql版本,如果没有就要安装好mysql

my.cnf中必须有datadir=/var/lib/mysql

3、开始安装xtrabackup

1)解压

cd /qeedoodb/setup

tar zxvf xtrabackup-1.6.tar.gz

2)拷贝innobackupex、xtrabackup、xtrabackup_51 工具到/usr/bin

cp /qeedoodb/setup/xtrabackup-1.6/bin/innobackupex /usr/bin/innobackupex

cp /qeedoodb/setup/xtrabackup-1.6/bin/xtrabackup /usr/bin/xtrabackup

cp /qeedoodb/setup/xtrabackup-1.6/bin/xtrabackup_51 /usr/bin/xtrabackup_51

4、备份并打包压缩

innobackupex --user=root --password=123456 --defaults-file=/etc/my.cnf --database=zztx --stream=tar /data/back_data/ 2>/data/back_data/zztx.log | gzip 1>/data/back_data/zztx.tar.gz

说明:

--database=zztx 单独对zztx数据库做备份 ,,若是不添加此参数那就那就是对全库做备份

2>/data/back_data/zztx.log 输出信息写入日志中

1>/data/back_data/zztx.tar.gz 打包压缩存储到该文件中

此处可以写个脚本做备份(backup.sh)

#!/bin/sh

echo "开始备份..."`date`

log=zztx01_`date +%y%m%d%H%M`.log

str=zztx01_`date +%y%m%d%H%M`.tar.gz

innobackupex --user=root --password=123456 --defaults-file=/etc/my.cnf --database=zztx --stream=tar /data/back_data/ 2>/data/back_data/$log | gzip 1>/data/back_data/$str

echo "备份完毕..."`date`

5、恢复数据

1) 先停止数据库:service mysqld stop

2) 解压 tar -izxvf zztx.tar.gz -C /data/back_data/db/ (没有db ,需要mkdir /data/back_data/db/)

3) 恢复 innobackupex --user=root --password --defaults-file=/etc/my.cnf --apply-log /data/back_data/db/ (--apply-log选项的命令是准备在一个备份上启动mysql服务)

innobackupex --user=root --password --defaults-file=/etc/my.cnf --copy-back /data/back_data/db/ (--copy-back 选项的命令从备份目录拷贝数据,索引,日志到my.cnf文 件里规定的初始位置。)

4) 赋权 chown -R mysql.mysql /var/lib/mysql/*

5) 重启数据库 service mysqld restart

6) 删除垃圾 cd /var/lib/mysql/ && rm xtrabackup*

进入数据库查看,一切OK~

推荐阅读:

MySQL开源备份工具Xtrabackup备份部署

MySQL Xtrabackup备份和恢复

用XtraBackup实现MySQL的主从复制快速部署【主不锁表】

安装和使用 Percona 推出的 Xtrabackup 备份 MySQL

XtraBackup 的详细介绍:请点这里
XtraBackup 的下载地址:请点这里

XtraBackup安装及使用