Te hanga i te taapiri MySQL ma te whakamahi i te whaipainga XtraBackup

Percona XtraBackup he whaipainga mo nga taapiri raraunga wera MySQL.

I te wa e hanga ana he taapiri raraunga, karekau he ripanga e maukati ana, ka haere tonu to punaha me te kore he here.

XtraBackup 2.4 ka taea te hanga kape taapiri o nga ripanga InnoDBXtraDB и TakuISAM i runga i nga tūmau MySQL 5.11, 5.5, 5.6 me 5.7, i runga ano hoki i te tūmau percona ki MySQL с XtraDB.

Hei mahi tahi MySQL 8.x me whakamahi te putanga XtraBackup 8.x. Ka korero noa tenei tuhinga XtraBackup 2.4.

Ko te tino painga XtraBackup Ko tenei taputapu e tika ana mo te hanga taapiri o nga kaitoro kua utaina me nga punaha he iti te maha o nga whakawhitinga.

Mēnā he nui te rahi o ō pātengi raraunga MySQL (tekau kikipaita), kātahi ka whaipainga paerewa Tuhinga o mua e kore e tuku kia tere koe ki te hanga i tetahi kape taapiri, me te whakaora i te putunga ka roa te waa.

tāutanga

tāutanga XtraBackup mai i te putunga pai Percona.

Whakahaerehia nga whakahau e whai ake nei:

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. I muri i te whakaurunga, whakahaeretia te whakahau xtrabackup -v. Na, he mea nui kia mohio kei te mahi tika te taputapu ki runga i te tūmau. Ko te mutunga, ka whakaatuhia he mea penei ki te mata:

xtrabackup: tohenga tūmau e mohiotia ana: - 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) (id revision: c8b4056)

Te hanga i te taapiri MySQL ma te whakamahi i te whaipainga XtraBackup

Motika uru, whakaaetanga me nga painga 

Me taea e XtraBackup te:

  • Tūhono ki tō tūmau MySQL.

  • Me whai mana uru ki te whaiaronga raraungadir

  • I te wa e hanga ana he kape taapiri, me tuhi motika ki te tawhā kua tohua ūnga-dir rārangi pukapuka.

He aha te datadir?

raraungadir Ko te whaiaronga kei reira te tūmau pātengi raraunga MySQL rokiroki raraunga. Kei reira nga papa raraunga katoa, nga ripanga katoa. I te nuinga o nga tohatoha Linux, ko te whaiaronga taunoa /var/lib/mysql.

He aha te whaiaronga target-dir?

ūnga-dir - Koinei te whaiaronga ka tiakina te taapiri.

E hiahia ana te kaiwhakamahi patengi raraunga ki nga mana uru e whai ake nei ki nga ripanga me nga papaa raraunga hei tautoko:

  • PUTAA ANA me te raka i nga tepu

  • KAITANGA WHAKATAKI

  • WAIHANGA TABLESPACE

  • PROCESS

  • Super

  • FA'U

  • WHAKAMAHI

  • Tīpakohia

Hōutuutu 

Hōutuutu XtraBackup kua oti te whakamahi i nga whiringa e rite ana ki nga whiringa MySQL paerewa.

He aha te tikanga o tenei?

Ka taea te tautuhi i nga tawhā whirihora i runga i te raina whakahau, i te konae whirihoranga DBMS ranei, hei tauira i roto /etc/my.cnf.

Ka panui te whaipainga XtraBackup i nga waahanga i muri i te whakarewatanga [mysqld] и [xtrabackup] mai i nga konae whirihoranga MySQL. Ka mahia tenei kia taea ai e te whaipainga te whakamahi i nga tautuhinga o to DBMS me te kore e tohu a-ringa i nga tawhā i ia taapiri.

Hei tauira, te uara raraungadir me etahi tawhā InnoDB Ka whiwhi matou i te XtraBackup mai i te whirihoranga o to DBMS.

Mena mo te mahi a XtraBackup ka hiahia koe ki te whakakore i nga taapiri kei roto i te waahanga [mysqld], katahi ka tohua i roto i te konae whirihoranga i te waahanga [xtrabackup]. I te mea ka panuihia a muri ake nei, ka teitei ake ta raatau kaupapa matua.

Kare koe e whai tawhā ki te taapiri taku.cnf. Ka taea te tautuhi i nga tawhā e hiahiatia ana i runga i te raina whakahau. I te nuinga o te wa ko te mea anake ka taea te whakanoho ki te waahanga [xtrabackup] ou taku.cnf he tawhā target_dir, ma te taunoa e tohu te whaiaronga ki te waahi ka tuuhia nga taapiri. Engari he mea whiriwhiri tenei.

He tauira mo te tohu i te ara ki te whaiaronga me te kape taapiri kei roto taku.cnf:

[xtrabackup]
target_dir = /data/backups/mysql/

Hōtuhi pūrua

Ka taea e koe te whakamahi i te tuhinga e whai ake nei hei hanga i te taapiri:

#!/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

Ka aha i te wa e mahia ana te tuhinga?

Tuatahi, ka ūkuia (muku) te whaiaronga ka tiakina e matou te kape taapiri:

rm -rf /mysql/backup.

Na, te whakamahi i te whaipainga XtraBackup hanga he kape taapiri ka penapena ki roto /mysql/backup/:

xtrabackup --user=xtrabackup --password=xxxxz1cYf95550Gc6xxxxxxxpE3rB03xxxx --backup --target-dir=/mysql/backup

I mua, i hanga e matou he kaiwhakamahi ki MySQL xtrabackup me nga mana e hiahiatia ana. Te whakamahi i te tawhā target-dir whakapūtā matou te whaiaronga te wahi kia ora te tārua.

He take nui!

Tuhia te rarangi tuhi:

xtrabackup --prepare --target-dir=/mysql/backup

Raraunga Putumōhio /mysql/backup e kore e rite kia maoa ra ano. 

Ko te meka ka puta he huringa i te wa e kape ana i nga konae. Mahi xtrabackup --prepare --target-dir=/mysql/backup hanga ana i nga raraunga taapiri kia rite tonu i roto i te waa.

Ka taea e koe te mahi i nga mahi whakarite raraunga i runga i tetahi miihini. Kaore he take ki te mahi i tenei i runga i te tūmau kei reira te puna DBMS. Ka taea e koe te tārua i te tārua ki te tūmau ūnga me te whakarite i reira.

Ko te mea whakamutunga ka mahia e matou ko te hanga i tetahi puranga hei tuu i ta maatau taapiri:

tar -zcvf /home/developer/dumps/xtrabackup-all-dbs-«$(date % F% H% M% S)».gz /mysql/backup

Te whakaora i te tārua 

I mua i to whakahoki mai i te taapiri ki te tūmau i whäia, me haere te raraunga ki roto i te wähanga whakarite. Tirohia i runga ake me pehea te mahi i tenei.

He tino ngawari te tukanga whakaora raraunga. Me tango e koe te tārua mai i te pūranga me te whakakapi i nga raraunga ki roto raraungadir.

Me pehea te whakakapi i nga raraunga i roto i te datadir?

Ka whakaarohia e rua nga whiringa.

Kōwhiringa 1

Whakamahia te whaipainga XtraBackup. Me tohu e koe he whiringa --copy-back

Ko te whakahau i raro nei ka whakawhiti i te taapiri ki raraungadir tūmau ūnga:

xtrabackup --copy-back --target-dir=/mysql/backup

Kōwhiringa 2

Ka taea e koe te mahi rereke, mahi me te kore te whaipainga XtraBackup.

Katoa e hiahia ana koe ki te mahi he tārua i te tārua ki raraungadir. Ka taea e koe tenei me cp ranei rsync.

He mea nui kia maarama ko te tikanga mo te whakahoki mai i te taapiri ka huri ki te whakakapi noa i nga ihirangi o te raarangi. raraungadir.

I mua i to tiimata ki te whakaora i tetahi taapiri i runga i te tūmau kua tohua, me:

  • Kati te tūmau MySQL.

  • Ūkui kōpaki raraungadir nukuhia ranei ona ihirangi ki tetahi atu waahi. Putumōhio raraungadir me noho kau.

I muri i te whakaoti i te whakawhiti raraunga ki raraungadir Ka taea te timata te tūmau MySQL.

Ngā rauemi e whakamahia ana

Tuhinga whaimana percona XtraBackup.

Source: will.com

Tāpiri i te kōrero