Как быстро восстановить резервную копию на сервере

Admin CentOS, Linux, MySQL, VPS

Заметка с описанием как быстро восстановить файлы на сервере Linux (CentOS) из резервной копии данных.

Исходим из того, что у нас имеется предварительно сохранённый архив с резервными копиями файлов.

Если закачивать резервные копии файлов по одному на сервер, то это займёт много времени. Более того иногда закачка большого количества файлов на ftp сопровождается ошибками.

Гораздо эффективнее и быстрее восстанавливать файлы и базу данных MySQL непосредственно на самом сервере. Сначала надо скопировать туда архивы, а затем разархивировать их с помощью командной строки.

Таким способом можно восстанавливать резервные файлы для любого сервера. Для этого поменяйте указанные ниже абсолютные пути к файлам, на свои, принятые на вашем сервере.

Ниже будет пример с абсолютными путями для восстановления файлов сайта на WordPress, который находится на сервере CentOS (Linux) с системой управления сайтами Vesta.

Предварительно через систему управления сайтами (cPanel, Vesta, ISPManager и др.) добавляем свой сайт и создаём FTP пользователя. Также создаём базу данных.

Теперь подключаемся по FTP к своему серверу. И переносим два заархивированных файла (базу данных MySQL и свои резервные файлы) в папку своего сайта public_html.

Подключаемся к серверу через Терминал по протоколу SSH.

Восстанавливаем базу данных MySQL через командную строку

В коде ниже меняем название site_name.ru на название своего сайта. А если требуется, правим и другие пути. Также меняем название mysql_name.sql.gz на имя своего файла базы данных MySQL.

Разорхивируем архив MySQL в файл с названием mysql.sql:

gunzip -c /home/admin/web/site_name.ru/public_html/mysql_name.sql.gz > /home/admin/web/site_name.ru/public_html/mysql.sql

Удаляем архив MySQL (он нам больше не нужен):

rm /home/admin/web/site_name.ru/public_html/mysql_name.sql.gz

Импортируем разархивированную базу данных MySQL:

mysql -u имя_базы_данных -p логин_базы_данных < /home/admin/web/site_name.ru/public_html/mysql.sql

Вводим пароль от базы данных. После чего импорт будет осуществлён.

Удаляем файл MySQL с сервера:

rm /home/admin/web/site_name.ru/public_html/mysql.sql

Восстанавливаем архив резервных данных через командную строку

В коде ниже меняем имя files_name.tar.gz на название своего архива, закаченного в директорию вашего сайта. Точно также вместо site_name.ru используем имя своего сайта. Если пути на вашем сервере иные, меняем на свои.

Разорхивируем архив резервных копий файлов в директорию нашего сайта:

tar -xzvf /home/admin/web/site_name.ru/public_html/files_name.tar.gz -C /home/admin/web/site_name.ru

После успешной разархивации удаляем с сервера свой архив:

rm /home/admin/web/site_name.ru/public_html/files_name.tar.gz

У сайта нет цели самоокупаться, поэтому на сайте нет рекламы. Но если вам пригодилась информация, можете лайкнуть страницу, оставить комментарий или отправить мне подарок на чашечку кофе.

Добавить комментарий

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи:
"Как быстро восстановить резервную копию на сервере"