Percona XtraBackup est un utilitaire de sauvegarde à chaud pour les bases de données MySQL .
Aucun verrouillage de table ne se produit pendant la sauvegarde des données, votre systÚme continue de fonctionner sans aucune restriction.
XtraBackup 2.4 peut sauvegarder les tables InnoDB , XtraDB et MyISAM sur les serveurs MySQL 5.11, 5.5, 5.6 et 5.7 , ainsi que Percona pour MySQL avec XtraDB .
Pour travailler avec MySQL 8.x , vous devez utiliser XtraBackup 8.x. Cet article ne parlera que de XtraBackup 2.4.
Le principal avantage de XtraBackup est que cet utilitaire convient à la fois à la sauvegarde de serveurs trÚs chargés et de systÚmes avec un faible nombre de transactions.
Si la taille totale de vos bases de données MySQL est importante (dizaines de gigaoctets), alors l'utilitaire mysqldump standard ne vous permettra pas de créer rapidement une sauvegarde, et la restauration du dump prendra du temps.
Installation
Installation de XtraBackup à partir du référentiel apt Percona.
Exécutez les commandes suivantes dans l'ordre:
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 . AprÚs l'installation, exécutez la commande xtrabackup -v
. Depuis, il est important de s'assurer que l'utilitaire fonctionne correctement sur le serveur. En conséquence, quelque chose de similaire sera affiché à l'écran:
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 .
Videz le dossier datadir ou dĂ©placez son contenu vers un autre emplacement. Le rĂ©pertoire datadir doit ĂȘtre vide.
Une fois les donnĂ©es transfĂ©rĂ©es vers datadir, le serveur MySQL peut ĂȘtre dĂ©marrĂ©.