Percona XtraBackup ke sesebelisoa sa ho boloka li-backups tsa database tse chesang MySQL.
Ha u theha bekapo ea data, ha ho litafole tse notletsoeng, 'me sistimi ea hau e ntse e tsoela pele ho sebetsa ntle le lithibelo.
XtraBackup 2.4 e ka etsa likopi tsa "backup" tsa litafole InnoDB, XtraDB и MOTSOALLE ho li-server MySQL 5.11, 5.5, 5.6 le 5.7, hape le ho seva percona etsoe MySQL с XtraDB.
Ho sebetsa le MySQL 8.x phetolelo e lokela ho sebelisoa XtraBackup 8.x. Sehlooho sena se tla bua feela ka XtraBackup 2.4.
Molemo o ka sehloohong XtraBackup ke hore sesebelisoa sena se loketse ho etsa likopi tsa bekapo tsa lintho tse jarollotsoeng haholo lisebelisoa, hammoho le bakeng sa litsamaiso tse nang le palo e tlase ea litšebelisano.
Haeba boholo ba kakaretso ea li-database tsa hau tsa MySQL bo le bohlokoa (mashome a li-gigabyte), joale tšebeliso e tloaelehileng soba e ke ke ea u lumella ho etsa kopi ea "backup" kapele, 'me ho khutlisa thotobolo ho tla nka nako e telele.
bophirima
bophirima XtraBackup ho tsoa sebakeng sa polokelo loketseng tikolohong Percona.
Etsa litaelo tse latelang ka tatellano:
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. Kamora ho kenya, tsamaisa taelo xtrabackup -v. Kaha, ho bohlokoa ho etsa bonnete ba hore sesebelisoa se sebetsa hantle ho seva. Ka lebaka leo, ntho e kang ena e tla hlahisoa skrineng:
xtrabackup: mabaka a seva a tsebahalang: - datadir=/var/lib/mysql - tmpdir=/tmp - server-id=1 - logbin=/var/log/mysql/mysql-bin.log - innodbbufferpoolsize=16384M - innodbfilepertable=1 - innodbflushmethod=Odirect - innodbflushlogattrxcommit=0xtrabackup mofuta wa 2.4.20 o itshetlehile ka seva sa MySQL 5.7.26 Linux (x8664) (nomoro ea ntlafatso: c8b4056)

Litokelo tsa phihlello, litumello le litokelo
XtraBackup e lokela ho tseba ho:
Hokela ho seva sa hau sa MySQL.
Eba le litokelo tsa ho kena bukeng ke data.
Ha u etsa kopi ea "backup", e-ba le litokelo tsa ho ngola ho parameter e boletsoeng target-dir lethathamo la libuka.
Datadir ke eng?
ke data ke directory moo seva sa database MySQL Di-database tsohle, litafole tsohle di fumaneha moo. Dikabong tse ngata Linux Ka tlwaelo, bukana ena ke /var/lib/mysql.
Target-dir directory ke eng?
target-dir - Ena ke bukana moo bekapo e tla bolokoa.
Mosebedisi wa database o hloka ditokelo tse latelang tsa phihlello ho ditafole le mabolokelong a polokelo hore a bolokehe:
HLAHISA 'me U LOTELE LITABELA
EKETSO MOEKETSI
BOPA MOTLATSI
TSELA
Super
Etsa
SELLOANE
Khetha
Moralo
Moralo XtraBackup e etsoa ho sebelisoa likhetho tse sebetsang ka mokhoa o ts'oanang le likhetho tse tloaelehileng tsa MySQL.
See se bolela eng?
Litlhophiso tsa tlhophiso li ka hlalosoa e ka ba molaong oa taelo kapa faeleng ea tlhophiso ea DBMS, mohlala ho. /etc/my.cnf.
Sesebelisoa sa XtraBackup se bala likarolo ka mor'a ho qala [mysqld] и [backup] ho tsoa ho lifaele tsa tlhophiso tsa MySQL. Sena se etsoa e le hore ts'ebeliso e ka sebelisa litlhophiso tsa DBMS ea hau ntle le ho tlameha ho hlakisa mekhahlelo nakong ea bekapo ka 'ngoe.
Ka mohlala, boleng ke data le li-parameter tse ling InnoDB Re fumana XtraBackup ho tsoa ho tlhophiso ea DBMS ea hau.
Haeba hore XtraBackup e sebetse u batla ho fetisa liparamente tse karolong eo [mysqld], ebe u li hlakisa feela faeleng ea tlhophiso karolong [backup]. Kaha li tla baloa hamorao, lintho tse tlang pele bophelong ba tsona e tla ba tse phahameng.
Ha ho hlokahale hore u kenye liparamente my.cnf. Likarolo tsohle tse hlokahalang li ka hlalosoa molaong oa taelo. Hangata ke eona feela ntho e ka beoang hantle karolong eo [backup] ea hau my.cnf ke parameter target_dir, eo ka ho sa feleng e bolelang bukana moo li-backups li tla beoa teng. Empa sena ke boikhethelo.
Mohlala oa ho hlakisa tsela e eang bukeng ka kopi ea "backup". my.cnf:
[xtrabackup]
target_dir = /data/backups/mysql/Backup script
U ka sebelisa sengoloa se latelang ho etsa 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/backupHo etsahala'ng nakong ea script?
Pele ho tsohle, re hlakola (hlakola) bukana eo re tla boloka kopi ea "backup" ho eona:
rm -rf /mysql/backup.
Ka mor'a moo, sebelisa lisebelisoa XtraBackup etsa kopi ea "backup" ebe u e boloka ho eona /mysql/backup/:
xtrabackup --user=xtrabackup --password=xxxxz1cYf95550Gc6xxxxxxxpE3rB03xxxx --backup --target-dir=/mysql/backupPejana, re thehile mosebelisi ho MySQL xtrabackup ka litokelo tse hlokahalang. Ho sebelisa parameter target-dir re hlakisa directory moo backup e lokelang ho bolokoa.
Ntlha ea bohlokoa!
Ela hloko mola oa script:
xtrabackup --prepare --target-dir=/mysql/backup
Lintlha tsa lethathamo /mysql/backup ha li tsitsane ho fihlela li phehiloe.
'Nete ke hore liphetoho li ka etsahala ha u ntse u kopitsa lifaele. Tshebetso xtrabackup --prepare --target-dir=/mysql/backup e etsa hore bekapo ya data e tsamaisane hantle ha nako e ntse e tsamaya.
O ka etsa ts'ebetso ea ho lokisa data mochining ofe kapa ofe. Ha ho hlokahale ho etsa sena ho seva moo mohloli oa DBMS o leng teng. U ka kopitsa bekapo ho server shebiloeng le ho e lokisetsa moo.
Ntho ea ho qetela eo re e etsang ke ho theha polokelo eo re behang bekapo ea rona ho eona:
tar -zcvf /home/developer/dumps/xtrabackup-all-dbs-«$(date % F% H% M% S)».gz /mysql/backupHo tsosolosa bekapo
Pele o ka khutlisetsa bekapo ho seva se lebisitsoeng, data e tlameha ho feta mohatong oa ho itokisa. Sheba ka holimo hore na u ka etsa sena joang.
Ts'ebetso ea ho hlaphoheloa ea data e bonolo haholo. U hloka ho ntša bekapo ho tswa ho archive le ho nka sebaka ya data ho ke data.
Mokhoa oa ho khutlisa data ho datadir?
A re hlahlobeng lintho tse peli tseo re ka khethang ho li etsa.
Khetho ea 1
Sebelisa lisebelisoa XtraBackup. U hloka ho totobatsa khetho --kopi-morao.
Taelo e ka tlase e tla fetisetsa bekapo ho ke data Seva ea sepheo:
xtrabackup --copy-back --target-dir=/mysql/backupKhetho ea 2
U ka e etsa ka tsela e fapaneng, etsa ntle le thuso XtraBackup.
Seo u hlokang ho se etsa feela ke ho kopitsa bekapo ho ke data. U ka etsa sena ka cp kapa rsync.
Ho bohlokoa ho utloisisa hore ts'ebetso ea ho khutlisa backup e theohela feela ho nkela litaba tsa bukana sebaka. ke data.
Pele o qala ho khutlisa backup ho seva e shebiloeng, o tlameha ho:
Emisa seva sa MySQL.
Hlakola sephutheli ke data kapa suthisa dikahare tsa yona sebakeng se seng. Catalog ke data e tlameha ho hloka letho.
Ka mor'a ho qeta ho fetisetsa data ho ke data Seva ea MySQL e ka qala.
Thepa e sebelisoang
.
Source: www.habr.com
