[mysql] Percona xtrabackupを使用したバックアップ、リストア

AIX、UNIX、Linux
Percona xtrabackupを使用したバックアップ、リストアでハマったこと - Qiita
10月からリブセンスに入社した @takemotto です。 この記事は 2015年 Livesense Advent Calendar 第21日目です。 現在、本番DBと開発DBのデータ同期にxtrabackupの導入を進めています。 本...

Zabbixのデータベースのバックアップを取ろうとしたところ、lost connectionになってしまい、取れなかったので、xtrabackupを使用してみました。

検証環境:

  • CentOS Linux release 7.2.1511 (Core)
  • mysql Ver 15.1 Distrib 10.1.18-MariaDB, for Linux (x86_64) using readline 5.1
  • percona-xtrabackup-2.3.5-1.el7.x86_64
  • lz4がインストールされていること
Redirecting

手順

とりあえずのバックアップ

sudo innobackupex --user=root --stream=xbstream --parallel=4  /var/tmp/xtrabackup/ | lz4 -9 > /var/tmp/<ファイル名>.xbstream.lz4

リストアは以下のような感じ。

# /var/tmpに上記手順で取得したバックアップがある前提で
$ cd /var/tmp
$ mkdir xtrabackup
$ cd xtrabackup
## 解凍処理
$ lz4 -d ../<ファイル名>.xbstream.lz4 | xbstream -x -v

ファイルが解凍されるので、

リストア本番。

$ cd ../
## WAL(Write Ahead Log)を適用
$ sudo innobackupex --user=root --apply-log xtrabackup/
・・・・・
151218 10:55:06  innobackupex: completed OK!
## リストア開始
$ sudo innobackupex --copy-back xtrabackup/
innobackupex: Finished copying back files.
151218 11:31:05  innobackupex: completed OK!
# 起動
$ sudo chown -R mysql:mysql /var/lib/mysql
$ sudo systemctl restart mariadb.service
Starting MySQL... SUCCESS!

ファイルの配置場所を変更しているときは、SELinuxの設定に注意。

タイトルとURLをコピーしました