Percona XtraBackup chinhu chinoshandiswa kune inopisa database backups MySQL.
Paunenge uchigadzira data backup, hapana matafura akakiyiwa, uye system yako inoramba ichishanda pasina zvirambidzo.
XtraBackup 2.4 inogona kugadzira backup makopi ematafura InnoDB, XtraDB и MyISAM pamaseva MySQL 5.11, 5.5, 5.6 uye 5.7, uye zvakare pane server percona nokuti MySQL с XtraDB.
Kushanda naye MySQL 8.x shanduro inofanira kushandiswa XtraBackup 8.x. Ichi chinyorwa chichangotaura nezvazvo XtraBackup 2.4.
Kubatsira kukuru XtraBackup ndeyekuti chishandiso ichi chakakodzera kugadzira makopi ekuchengetedza ezvinyorwa zvakawanda servers, pamwe chete nemasisitimu ane nhamba shoma yekutengeserana.
Kana saizi yese yeMySQL dhatabhesi yakakosha (makumi emagigabytes), ipapo iyo yakajairwa utility mysqldump hazvizokubvumiri iwe kukurumidza kugadzira kopi yekuchengetedza, uye kudzoreredza kuraswa kunotora nguva yakawanda.
Kuiswa
Kuiswa XtraBackup kubva ku repository akakodzera Percona.
Mhanya mirairo inotevera sequentially:
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-242. Mushure mekuisa, shandisa murairo xtrabackup -v. Sezvo, zvakakosha kuve nechokwadi chekuti zvinoshandiswa zvinoshanda nemazvo pane server. Nekuda kweizvozvo, chimwe chinhu chakadai chicharatidzwa pachiratidziri:
xtrabackup: nharo dzeseva dzinozivikanwa: - datadir=/var/lib/mysql - tmpdir=/tmp - server-id=1 - logbin=/var/log/mysql/mysql-bin.log - innodbbufferpoolsize=16384M - innodbfilepertable=1 - innodbflushmethod=Odirect - innodbflushlogattrxcommit=0xtrabackup vhezheni 2.4.20 zvichibva paMySQL server 5.7.26 Linux (x8664) (revision id: c8b4056)

Kuwana kodzero, mvumo uye maropafadzo
XtraBackup inofanirwa kukwanisa:
Batanidza kune yako MySQL server.
Iva nekodzero dzekuwana dhairekitori datadir.
Paunenge uchigadzira kopi yekuchengetedza, iva nekodzero dzekunyora kune yakatarwa parameter target-dir catalog.
Chii chinonzi datadir?
datadir ndiyo dhairekitori uko server yedatabase MySQL Inochengeta data. Madhatabhesi ese, matafura ese aripo. Munzvimbo zhinji dzekugovera Linux Nekuda kweizvozvo, dhairekitori iri /var/lib/mysql.
Chii chinonzi target-dir directory?
target-dir -Iri ndiro dhairekitori apo iyo backup ichachengetwa.
Mushandisi wedatabase anoda kodzero dzinotevera dzekuwana kumatafura uye dhatabhesi kuti dzitsigirwe:
RELOAD uye KUkiya TABLES
REPLICATION CLIENT
GADZIRA TABLESPACE
MAFAMBIRO
nakisa
Create
Isa
SELECT
Kugadziriswa
Kugadziriswa XtraBackup yakaitwa uchishandisa sarudzo dzinoita zvakafanana neyakajairwa MySQL sarudzo.
Izvi zvinorevei?
Configuration parameters inogona kutsanangurwa ingave pamutsetse wekuraira kana muDBMS yekumisikidza faira, semuenzaniso mu. /etc/my.cnf.
XtraBackup utility inoverenga zvikamu mushure mekutanga [mysqld] и [xtrabackup] kubva kuMySQL mafaira ekugadzirisa. Izvi zvinoitirwa kuti zvinoshandiswa zvinogona kushandisa marongero eDBMS yako pasina kutsanangura nemaoko maparamita panguva yega yega backup.
Somuenzaniso, kukosha datadir uye mamwe ma parameters InnoDB Isu tinowana XtraBackup kubva pakugadziriswa kweDBMS yako.
Kana kuti XtraBackup ishande iwe unoda kudarika maparameter ari muchikamu [mysqld], wobva wangozvitsanangura mufaira rekugadzirisa muchikamu [xtrabackup]. Sezvo vachizoverengwa gare gare, kukosha kwavo kuchava kwepamusoro.
Iwe haufanirwe kuwedzera chero ma parameter kune yangu.cnf. Zvose zvinodiwa parameters zvinogona kutsanangurwa pamutsara wekuraira. Kazhinji chinhu chete chinogona kuiswa zviri nyore muchikamu [xtrabackup] zvako yangu.cnf iri parameter target_dir, iyo inotsanangura dhairekitori pachaiswa ma backups. Asi izvi ndezvekusarudza.
Muenzaniso wekutsanangura nzira yedhairekitori ine backup kopi mukati yangu.cnf:
[xtrabackup]
target_dir = /data/backups/mysql/Backup script
Iwe unogona kushandisa script inotevera kugadzira backup:
#!/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/backupChii chinoitika panguva yekunyora script?
Chekutanga pane zvese, tinobvisa (bvisa) dhairekitori umo isu tichachengetedza kopi yekuchengetedza:
rm -rf /mysql/backup.
Zvadaro, kushandisa utility XtraBackup gadzira kopi yekuchengetedza uye chengeta mukati /mysql/gadziriro/:
xtrabackup --user=xtrabackup --password=xxxxz1cYf95550Gc6xxxxxxxpE3rB03xxxx --backup --target-dir=/mysql/backupPakutanga, takagadzira mushandisi muMySQL xtrabackup neropafadzo dzinodiwa. Kushandisa parameter target-dir isu tinotsanangura dhairekitori panofanirwa kuchengetwa backup.
Pfungwa inokosha!
Cherechedza mutsara wezvinyorwa:
xtrabackup --prepare --target-dir=/mysql/backup
Catalog data /mysql/backup haawirirane kusvikira aibva.
Chokwadi ndechekuti shanduko dzinogona kuitika paunenge uchikopa mafaera. Operation xtrabackup --prepare --target-dir=/mysql/backup inoita kuti backup data inyatsoenderana nekufamba kwenguva.
Iwe unogona kuita iyo data yekugadzirira kushanda pane chero muchina. Iko hakuna chikonzero chekuita izvi pane sevha uko kunobva DBMS iripo. Iwe unogona kukopa iyo backup kune yakananga server uye gadzirira ipapo.
Chinhu chekupedzisira chatinoita kugadzira dura ratinoisa backup yedu:
tar -zcvf /home/developer/dumps/xtrabackup-all-dbs-«$(date % F% H% M% S)».gz /mysql/backupKudzoreredza backup
Usati wadzoreredza backup kune yakananga server, iyo data inofanirwa kuenda kuburikidza nechikamu chekugadzirira. Ona pamusoro kuti ungaita sei izvi.
Iyo data recovery process iri nyore kwazvo. Iwe unofanirwa kubvisa iyo backup kubva mudura uye kutsiva iyo data mukati datadir.
Nzira yekutsiva sei data mu datadir?
Ngatikurukurei nzira mbiri.
Sarudzo 1
Shandisa zvinoshandiswa XtraBackup. Iwe unofanirwa kutsanangura sarudzo --copy-back.
Murairo uri pazasi uchaendesa backup kune datadir target server:
xtrabackup --copy-back --target-dir=/mysql/backupSarudzo 2
Iwe unogona kuzviita zvakasiyana, ita pasina utility XtraBackup.
Zvese zvaunoda kuti uite kukopa backup kune datadir. Unogona kuita izvi ne cp kana rsync.
Izvo zvakakosha kuti unzwisise kuti maitiro ekudzoreredza backup anodzika kusvika pakungotsiva zviri mukati medhairekitori. datadir.
Usati watanga kudzoreredza backup pane yakananga server, unofanirwa:
Misa MySQL server.
Bvisa folda datadir kana kuendesa zvirimo kune imwe nzvimbo. Catalog datadir inofanira kunge isina chinhu.
Mushure mekupedza kuendesa data ku datadir MySQL server inogona kutangwa.
Zvinhu zvakashandiswa
.
Source: www.habr.com
