Бекапим Мускуль

Answer

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five http://jquery2dotnet.com/ centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.

На днях тут задумался... а что если ясли упадут? конечно все сервера бекапятся - но что если сдохнут сами ясли? В общем пришёл к выводу что надо перестраховаться и бекапить базы мускуля куда то отдельно. В моём случае бекапиться будет на внешний FreeNAS сервер по NFS средствами xtrabackup и mariabackup. Посути одно и тоже, просто xtrabackup не поддерживает MariaDB 10.3.

В статье я буду предполагать что шару NFS на сервере уже настроили. Настроим теперь клиента. Инструкция подходит как для 7 так и для 8 версии Centos

Для начала собственно установим NFS клиент

yum install nfs-utils
 
Теперь создадим папку где будут лежать бекапы и куда мы будем монтировать шару

mkdir -p /var/mysql_bck

теперь собственно монтируем шару

mount -t nfs 192.168.0.5:/mnt/datastore/mysql_bck /var/mysql_bck

ну и чтобы после ребута сохранилось
nano /etc/fstab

в конец дописываем

192.168.0.5:/mnt/datastore/mysql_bck /var/mysql_bck nfs rw,-b 0 0

можем дял верности ребутнуться. проверяем что всё получилось. 

df -h

Вывод должен получиться примерно следующий


Теперь собственно начинаем делать бекапы. Сразу скажу что на данный момент всё выглядит примерно так:
xtrabackup-24 - для мускуля вплоть до версии 5.7
xtrabackup-80 - для мускуля 8.0 и mariadb 10.2
mariabackup - для mariadb 10.3

Для установки xtrabackup нужно подключить репу Percona

yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm

запускаем установку нужной версии 

yum install percona-xtrabackup-80

или 

yum install percona-xtrabackup-24

После чего запускаем бекап

xtrabackup --backup --user=root --password='R(zDXcVUmI[zwx%aNBTN' --target-dir=/var/mysql_bck

после того как бекап сделался, его можно сразу подготовить. в противном случае при восстановлении он не будет работать. 

xtrabackup --prepare --target-dir=/var/mysql_bck

готово. Бекап сделан и в таком виде он готов к восстановлению. Для восстановления следующие команды:

systemctl stop mysqld && rm -rf /var/lib/mysql/*
xtrabackup --copy-back --target-dir=/var/mysql_bck
chown -R mysql:mysql /var/lib/mysql
systemctl start mysqld

это при условии что у вас mysql а не мария. Для марии команды не сильно отличаются.



Поделись с друзьями

Имя:*
E-Mail: