xtrabackup的備份還原

2021-07-27 06:19:40 字數 4530 閱讀 7822

1 簡介

xtrabackup有兩個主要的工具:innobackupex和xtrabackup,xtrabackup只能備份innodb和xtradb資料表,innobackupex封裝了xtrabackup,可以備份myisam資料表。

yum install perl-dbd-mysql.x86_64
yum install perl-time-hires.x86_64

wget

rpm -ivh percona-xtrabackup-2.2.3-4982.el6.x86_64.rpm  (如果提示版本不對的情況下請到官方**查詢相應的版本)

整個庫進行備份

innobackupex --defaults-file=/etc/my.cnf --user=root --password=db1245789  --databases=erp /opt/backup/

增量備份

innobackupex --defaults-file=/etc/my.cnf --user=root --password=roo t--databases="erp erp2" --incremental --incremental-basedir=/opt/backup/2017-02-17_07-56-57/ /opt/backup/

整個庫進行備份並打成流包

innobackupex --defaults-file=/etc/my.cnf --user=root --password=root --databases=erp --stream=tar /opt/backup/ > /opt/backup/dbbackup20110809.tar  

常用命令

innobackupex使用方法

完整的選項使用請執行innobackupex –help,這裡只介紹使用常用的選項進行完整備份及增量備份和還原。

innobackupex options 這裡只對常用引數進行描述

–defaults-file 資料庫的配置檔案路徑,感覺本地備份不寫也可以,遠端沒測試過。

–copy-back 從備份目錄拷貝資料,索引,日誌到my.cnf檔案裡規定的初始位置。

–no-timestamp 建立備份時不自動生成時間目錄,可以自定義備份目錄名例如: /backups/mysql/base

–databases 用於指定要備份的資料庫, 多個庫檔案使用方法: 「database1 database2″

–incremental 在全備份的基礎上進行增量備份,後跟增量備份存貯目錄路徑

–incremental-basedir=directory 增量備份所需要的全備份路徑目錄或上次做增量備份的目錄路徑

–incremental-dir=directory 增量備份存貯的目錄路徑

–redo-only 用於準備增量備份內容把資料合併到全備份目錄,配合–incremental-dir 增量備份目錄使用。

–force-non-empty-directories 如果是特定庫備份還原,不需要刪掉整個mysql目錄,只是特定庫的及相關檔案就可以,還原時加上此引數就不會報錯。

其他具體引數可以參考:

還原:

789

1011

1213

1415

1617

1819

service mysql stop

rm-rf

/var

/lib/mysql

mkdir/var

/lib/mysql

/

data

/

mysql_backup

/

full_backup

--use-memory

=1g

--user

=root

--password

=root

innobackupex --copy-back

/

data

/

mysql_backup

/

full_backup

chownmysql:mysql -r

/var

/lib/mysql

service mysql start

檢視恢復的資料庫

二、指定資料庫

備份:假如我們要備份centos和aabb資料庫。

innobackupex --user=root --password=root --defaults-file=/etc/mysql/my.cnf --databases="centos aabb" /data/mysql_backup/

這樣就會在/data/mysql_backup生成乙個帶時間的目錄,如果不需要帶時間,可以使用選項–no-timestamp。

如果想備份成壓縮檔案,可以使用如下語句:

innobackupex --user=root --password=root --defaults-file

=/etc/mysql/my.cnf

--databases="centos aabb"

--no-timestamp

--stream=tar./|gzip->centos-aabb.bz.tar.gz

還原:假如完整備份的路徑為/data/mysql_backup/full_backup,如果完整備份是壓縮檔案,需要先解壓再還原。

9

1011

1213

1415

1617

1819

2021

2223

2425

service mysql stop

rm-rf

/

var/lib/

mysql

/ibdata*

rm-rf

/

var/lib/

mysql

/ib_logfile*

rm-rf

/

var/lib/

mysql

/centos

rm-rf

/

var/lib/

mysql

/aabb

/

data

/mysql_backup/centos_aabb_full_backup

innobackupex --copy-back

--defaults-file=/

etc/mysql/

my.cnf

/data/

mysql_backup

/centos_aabb_full_backup

chown-r

mysql:mysql/

var/lib/mysql

service mysql start

xtrabackup 備份 還原

1 安裝2 備份 innobackupex defaults file data mysql mysql3307 my3307.cnf s tmp mysql3307.sock proot stream tar gzip date f h m s tar.gz defaults file 為待備份資...

xtrabackup備份及還原

新版xtrabackup完全備份及還原 1 在原主機做完全備份到 backup backup目錄不需事先建立 xtrabackup uroot pmagedu backup target dir backup scp r backup 目標主機 backup 2 在目標主機上 1 預準備 確保資料一...

Xtrabackup安裝備份還原過程

一 安裝。前提是已經安裝好mysql.這裡使用壓縮包直接解壓使用。2 安裝依賴環境包 yum install y libaio libaio devel perl time hires curl curl devel zlib devel openssl develperl cpio expat d...