XtraBackup утилитасын колдонуу менен MySQL камдык көчүрмөсүн түзүү

Percona XtraBackup ысык маалыматтар базасын резервдик көчүрүү үчүн пайдалуу болуп саналат MySQL.

Маалыматтын камдык көчүрмөсүн түзүүдө эч бир таблица кулпуланбайт жана сиздин тутумуңуз эч кандай чектөөсүз иштей берет.

XtraBackup 2.4 таблицалардын резервдик көчүрмөлөрүн түзө алат InnoDBXtraDB и MyISAM серверлерде MySQL 5.11, 5.5, 5.6 жана 5.7, ошондой эле серверде percona үчүн MySQL с XtraDB.

менен иштөө MySQL 8.x версиясын колдонуу керек XtraBackup 8.x. Бул макалада гана сөз болот XtraBackup 2.4.

Негизги артыкчылыгы XtraBackup бул утилита өтө жүктөлүүчү файлдардын камдык көчүрмөлөрүн түзүүгө ылайыктуубу? серверлер, ошондой эле транзакциялардын саны аз болгон системалар үчүн.

Эгер MySQL маалымат базаларыңыздын жалпы көлөмү олуттуу болсо (ондогон гигабайттар), анда стандарттык утилита mysqldump тез камдык көчүрмөнү түзүүгө мүмкүндүк бербейт жана таштандыны калыбына келтирүү көп убакытты талап кылат.

жөндөө

жөндөө XtraBackup репозиторийден ап 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: таанылган сервер аргументтери: - datadir=/var/lib/mysql - tmpdir=/tmp - server-id=1 - logbin=/var/log/mysql/mysql-bin.log - innodbbufferpoolsize=16384M - innodbfilepertable=1 - innodbflushmethod=Odirect - innodbflushlogattrxcommit=0xtrabackup версиясы 2.4.20, MySQL серверинин 5.7.26 негизинде Linux (x8664) (түзөтүүнүн идентификатору: c8b4056)

XtraBackup утилитасын колдонуу менен MySQL камдык көчүрмөсүн түзүү

Кирүү укуктары, уруксаттары жана артыкчылыктары 

XtraBackup төмөнкүлөрдү аткара алышы керек:

  • MySQL сервериңизге туташыңыз.

  • каталогго кирүү укуктары бар маалыматтар болуп саналат

  • Камдык көчүрмөнү түзүүдө көрсөтүлгөн параметрге жазуу укуктарына ээ болуңуз максат-дир каталог.

datadir деген эмне?

маалыматтар болуп саналат маалымат базасы сервери жайгашкан каталог болуп саналат MySQL маалыматтарды сактайт. Бардык маалымат базалары, бардык таблицалар ошол жерде жайгашкан. Көпчүлүк дистрибуцияларда Linux Демейки шартта, бул каталог /var/lib/mysql.

Максаттуу каталог деген эмне?

максат-дир - Бул резервдик көчүрмө сактала турган каталог.

Маалыматтар базасынын колдонуучусуна резервдик көчүрмөлөө үчүн таблицаларга жана маалымат базаларына төмөнкү кирүү укуктары керек:

  • ТАБЛИЦАЛАРДЫ КАЙРА ЖҮКТӨӨ ЖАНА БУЛПОО

  • РЕПЛИКАЦИЯЛЫК КЛИЕНТ

  • TABLESPACE ТҮЗҮҮ

  • PROCESS

  • SUPER

  • ТҮЗҮҮ

  • ЖАЗУУ

  • SELECT

тарам 

тарам XtraBackup стандарттык MySQL параметрлери сыяктуу иш-аракет кылган опцияларды колдонуу менен жасалды.

Бул эмнени билдирет?

Конфигурация параметрлери буйрук сабында же DBMS конфигурация файлында көрсөтүлүшү мүмкүн, мисалы /etc/my.cnf.

XtraBackup утилитасы ишке киргенден кийин бөлүмдөрдү окуйт [Mysqld] и [xtrabackup] MySQL конфигурация файлдарынан. Бул утилита ар бир резервдик көчүрүү учурунда параметрлерди кол менен көрсөтпөстөн, DBMS орнотууларын колдоно алышы үчүн жасалат.

Мисалы, наркы маалыматтар болуп саналат жана кээ бир параметрлер InnoDB Биз сиздин DBMS конфигурациясынан 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 камдык маалыматтарды убакыттын өтүшү менен кемчиликсиз ырааттуу кылат.

Маалыматтарды даярдоо операциясын каалаган машинада аткара аласыз. Булак DBMS жайгашкан серверде муну жасоонун кереги жок. Сиз камдык көчүрмөнү максаттуу серверге көчүрүп, ошол жерден даярдасаңыз болот.

Биз кыла турган акыркы нерсе - камдык көчүрмөбүздү жайгаштырган архивди түзүү:

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

Камдык көчүрмөнү калыбына келтирүү 

Максаттуу серверге камдык көчүрмөнү калыбына келтирүүдөн мурун, маалыматтар даярдоо баскычынан өтүшү керек. Муну кантип кылуу керек экенин жогорудан караңыз.

Маалыматтарды калыбына келтирүү процесси абдан жөнөкөй. Архивден камдык көчүрмөнү чыгарып, андагы маалыматтарды алмаштыруу керек маалыматтар болуп саналат.

Datadirдеги маалыматтарды кантип алмаштыруу керек?

Келгиле, эки вариантты карап көрөлү.

параметр 1

Утилитаны колдонуңуз XtraBackup. Сиз вариантты белгилешиңиз керек --көчүрмө-кайра

Төмөнкү буйрук камдык көчүрмөнү өткөрүп берет маалыматтар болуп саналат максаттуу сервер:

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

параметр 2

Сиз муну башкача кылсаңыз болот, утилитасы жок кылыңыз XtraBackup.

Болгону камдык көчүрмөнү төмөнкүгө көчүрүү керек маалыматтар болуп саналат. Сиз муну менен кыла аласыз cp же rsync.

Камдык көчүрмөнү калыбына келтирүү процедурасы каталогдун мазмунун алмаштырууга чейин болорун түшүнүү маанилүү. маалыматтар болуп саналат.

Максаттуу серверде камдык көчүрмөнү калыбына келтирүүнү баштоодон мурун, сиз керек:

  • MySQL серверин токтотуу.

  • Папканы тазалоо маалыматтар болуп саналат же анын мазмунун башка жерге жылдырыңыз. Каталог маалыматтар болуп саналат бош болушу керек.

Маалыматтарды өткөрүү аяктагандан кийин маалыматтар болуп саналат MySQL серверин баштоого болот.

материалдар колдонулат

Расмий документтер percona XtraBackup.

Source: www.habr.com

DDoS коргоосу, VPS VDS серверлери бар сайттар үчүн ишенимдүү хостинг сатып алыңыз 🔥 DDoS коргоосу, VPS VDS серверлери бар ишенимдүү веб-сайт хостингин сатып алыңыз | ProHoster