Percona XtraBackup は、MySQLデータベース用のホットバックアップユーティリティです 。
データのバックアップ中にテーブルロックは発生しません。システムは制限なしで動作し続けます。
XtraBackup 2.4を バックアップすることができますInnoDBは、 XtraDB と のMyISAMテーブルを 上のMySQL 5.11、5.5、5.6および5.7のサーバー 、およびPerconaのサーバー のため のMySQL と XtraDB。
で動作するように MySQLの8.xの 、あなたが使用する必要があります XtraBackup 8.x以降を この記事では、XtraBackup2.4についてのみ説明します 。
XtraBackupの主な利点 は、このユーティリティが、負荷の高いサーバーとトランザクション数の少ないシステムの両方のバックアップに適していることです。
MySQLデータベースの合計サイズが大きい場合(数十ギガバイト)、標準のmysqldumpユーティリティで はバックアップをすばやく作成できず、ダンプの復元に長い時間がかかります。
インストール
インストール XtraBackupを からaptの Perconaのリポジトリ 。
次のコマンドを順番に実行します。
wget https://repo.percona.com/apt/percona-release_latest.$(lsb_release -sc)_all.deb
sudo dpkg -i percona-release_latest.$(lsb_release -sc)_all.deb
sudo apt-get update
sudo apt-get install percona-xtrabackup-24
2。インストール後、コマンドを実行し xtrabackup -v
ます。以来、ユーティリティがサーバー上で正しく機能することを確認することが重要です。その結果、同様の何かが画面に表示されます。
xtrabackup: recognized server arguments: — datadir=/var/lib/mysql — tmpdir=/tmp — server-id=1 — logbin=/var/log/mysql/mysql-bin.log — innodbbufferpoolsize=16384M — innodbfilepertable=1 — innodbflushmethod=Odirect — innodbflushlogattrxcommit=0xtrabackup version 2.4.20 based on MySQL server 5.7.26 Linux (x8664) (revision id: c8b4056)
,
XtraBackup :
MySQL.
datadir.
target-dir .
datadir?
datadir — , MySQL . , . Linux /var/lib/mysql.
target-dir ?
target-dir — , .
, :
RELOAD LOCK TABLES
REPLICATION CLIENT
CREATE TABLESPACE
PROCESS
SUPER
CREATE
INSERT
SELECT
XtraBackup , , MySQL.
?
, , /etc/my.cnf.
XtraBackup [mysqld] [xtrabackup] MySQL. , .
, datadir InnoDB XtraBackup .
XtraBackup , [mysqld], [xtrabackup]. , .
my.cnf. . , [xtrabackup] my.cnf — target_dir, , . .
my.cnf:
[xtrabackup]
target_dir = /data/backups/mysql/
:
#!/bin/bash
#
rm -rf /mysql/backup
# C
xtrabackup --user=xtrabackup \
--password=xxxx_SECRET_xxxx \
--backup \
--target-dir=/mysql/backup
#
xtrabackup --prepare --target-dir=/mysql/backup
#
tar -zcvf /home/developer/dumps/xtrabackup-all-dbs-"$(date +%F-%H:%M:%S)".gz /mysql/backup
?
() , :
rm -rf /mysql/backup.
, XtraBackup /mysql/backup/:
xtrabackup --user=xtrabackup --password=xxxxz1cYf95550Gc6xxxxxxxpE3rB03xxxx --backup --target-dir=/mysql/backup
MySQL xtrabackup
. target-dir
, .
!
:
xtrabackup --prepare --target-dir=/mysql/backup
/mysql/backup , .
, . xtrabackup --prepare --target-dir=/mysql/backup
.
. , . .
, — , :
tar -zcvf /home/developer/dumps/xtrabackup-all-dbs-«$(date % F% H% M% S)».gz /mysql/backup
. .
. datadir.
datadir?
.
1
XtraBackup. --copy-bak.
datadir :
xtrabackup --copy-back --target-dir=/mysql/backup
2
, XtraBackup.
, — datadir. cp rsync.
, datadir.
, :
MySQL .
datadirフォルダーを空にする か、その内容を別の場所に移動します。datadirディレクトリ は空である必要があります。
データがdatadirに転送さ れると、 MySQLサーバーを起動できます。