数据库备份工具Xtrabackup

Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,是一款开源能够对innodb和xtradb数据库进行热备的工具。

1、安装

yum install  percona-xtrabackup -y

2、创建数据库

create database test;

use test;

create table bak(id int ,name char(20));  创建表

insert into bak values(1,‘dog‘);

3、建立一个权限较小的用户管理数据库,尽量不要用root

grant reload,lock tables, replication client on *.* to ‘user‘@‘localhost‘ identified by ‘centos‘;

(1) reload   允许执行的命令 flush-hosts, flush-logs, flush-privileges, flush-status, flush-tables, flush-threads, refresh, reload

(2)必须拥有lock tables权限,才可以使用lock tables

(3)授予复制账号replication client权限,复制用户可以使用show master status, show slave status 和 show binary logs

4、完整备份

innobackupex --user=user  --password=centos /backup/

5、在数据库中插入数据

use test;

insert into bak values(2,‘cat‘);

insert into bak values(3,‘pig‘);

6、进行增量备份

innobackupex --incremental /backup/ --incremental-basedir=/backup/2017-11-16_16-37-22

解释:/backup/ 指定备份目录

--incremental-basedir  指定在哪的基础上增量备份。

7、数据恢复准备

一般情况下,在备份完成后,数据尚且不能用于恢复操作,因为备份的数据中可能会包含尚未提交的事务或已经提交但尚未同步至数据文件中的事务。因此,此时数据文件仍处理不一致状态。“准备”的主要作用正是通过回滚未提交的事务及同步已经提交的事务至数据文件也使得数据文件处于一致性状态“准备”(prepare)增量备份与整理完全备份有着一些不同,尤其要注意的是:

(1)需要在每个备份(包括完全和各个增量备份)上,将已经提交的事务进行“重放”。“重放”之后,所有的备份数据将合并到完全备份上。

(2)基于所有的备份将未提交的事务进行“回滚”。

例如:当拷贝数据库时有些数据还没有写入磁盘。

cd /backup

首先完全备份      innobackupex --apply-log --redo-only 2017-11-16_16-37-22    
 然后增量备份    innobackupex --apply-log --redo-only 2017-11-16_16-37-22  --incrementaldir=2017-11-16_16-43-47    需指定完全备份目录和增量目录

8、测试恢复数据

(1)不小心删除数据库文件

或者 rm -rf *,如果仅仅只是删除其中一个库,需要做下面操作

(2)恢复

innobackupex --copy-back /backup/2017-11-16_17-39-43/

(3)cd  /var/lib

cp -a mysql  mysql.bak

rm -rf mysql 删除mysql文件夹

mkdir mysql

cd mysql

innobackupex --copy-back /backup/2017-11-16_17-39-43/ 恢复数据

chown -R mysql.mysql mysql  修改/var/lmysql

systemctl start mariadb

9、连接数据库查看文件恢复

时间: 2024-10-05 06:05:50

数据库备份工具Xtrabackup的相关文章

mysql5.7 innodb数据库备份工具Xtrabackup的安装

mysql5.7 innodb数据库备份工具Xtrabackup的安装     wget mhttps://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.7/binary/redhat/6/x86_64/percona-xtrabackup-24-2.4.7-1.el6.x86_64.rpm Mysql5.7需要安装XtraBackup 2.4.1以上版本 官网地址 https://www.percona.com/down

数据库 之 备份工具Xtrabackup进行MySQL备份

1  概述 1.1  简介 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具. PXB(Percona XtraBackup)是物理备份,是基于复制文件备份,备份时可以远程操作,基于mysql协议远程连接,需要备份的主机不用安装PXB,但是,执行恢复数据操作时mysql服务不能启动,所以恢复时只能本地恢复,而且在本地的服务器上要安装PXB PXB在恢复增量数据时,先合并第一次增量到全量

MySQL备份工具XtraBackup的使用

xtrabackup简介 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具.特点: (1)备份过程快速.可靠: (2)备份过程不会打断正在执行的事务: (3)能够基于压缩等功能节约磁盘空间和流量: (4)自动实现备份检验: (5)还原速度快: 官方下载地址:地址,你可以通过此链接下载最新版. #wget https://www.percona.com/downloads/XtraBac

mysql物理备份工具Xtrabackup安装配置

mysql物理备份工具Xtrabackup安装配置 1????Xtrabackup工具介绍 Xtrabackup是一个对InnoDB做物理数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品. Xtrabackup有两个主要的工具:xtrabackup.innobackupex (1)xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表. (2)innobackupex是用来备份非Inn

MySQL Study之--Mysql数据库备份工具(mysqldump)

MySQL Study之--Mysql数据库备份工具(mysqldump) 对于Mysql Database的备份方式有很多种,此次文档主要介绍mysqldump工具: mysqldump:      mysqldump工具很多方面类似相反作用的工具mysqlimport.它们有一些同样的选项.但mysqldump能够做更多的事情.它可以把整个数据库装载到一个单独的文本文件中.这个文件包含有所有重建您的数据库所需要的SQL命令.这个命令取得所有的模式(Schema,后面有解释)并且将其转换成DD

MySQL Study之--MySQL innodb引擎备份工具XtraBackup之一(Install)

MySQL Study之--MySQL innodb引擎备份工具XtraBackup之一(Install) Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品. Xtrabackup有两个主要的工具:xtrabackup.innobackupex (1)xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表 (2)innobackupex-1.5

Oracle数据库备份工具——UCache企业级灾备云

UCache企业级灾备云以WEB平台的方式,向企业提供面向云端.虚拟和物理环境下的数据.平台.应用备份/恢复的云服务平台.向企业提供面向云端.虚拟和物理环境下的数据.平台.应用备份/恢复的云服务平台的数据级和应用级的备份与恢复.UCache企业级灾备云除了可以当作Oracle数据库备份工具,其实他的适用范围还不止这些,还包括:一.作为支持各种版本操作系统的数据备份/恢复的工具:1.Windows2000版本PC电脑端操作系统的数据实时.定时自动备份/恢复工具2.WindowsXP版本PC电脑端操

Xtrabackup数据库备份工具

Xtrabackup 官方原理 在InnoDB内部会维护一个redo日志文件,我们也可以叫做事务日志文件.事务日志会存储每一个InnoDB表数据的记录修改.当InnoDB启动时,InnoDB会检查数据文件和事务日志,并执行两个步骤:它应用(前滚)已经提交的事务日志到数据文件,并将修改过但没有提交的数据进行回滚操作. Xtrabackup在启动时会记住log sequencenumber(LSN),并且复制所有的数据文件.复制过程需要一些时间,所以这期间如果数据文件有改动,那么将会使数据库处于一个

生产环境mysql快速备份工具XtraBackup使用案例

Mysql的备份有很多种方式,最常用的应该是mysqldump了,将数据库导出一个 sql文件,还原的时候source db.sql 就欢快的执行了.小伙伴愉快的布上一个shell脚本,配上cron,幸福的看着每天备份文件的生成,倍感安全.假如一个mysql超过了10G呢? 请相信我,导出的时间需要好几个小时,那还原呢,时间会更长.我曾经用sql还原一个6G的数据库,用了3个多小时. mysqldump这种逻辑备份的缺点就不多说了,说说xtrabackup,又是PERCONA,就冲这个名号,值得