Восстановление Wordpress. Восстановление базы данных сайта из бекапа

Skip to end of metadata
Go to start of metadata

Восстановление из резервной копии

Время выполнения инструкции: 5-20 минут, в зависимости от объёма БД Wordpress и объёма файлов сайта

Резервные копии хранятся в каталоге /app/asr_cabinet/mnt/backup/ и сохраняются вместе с контрольными суммами.

В примере показано как восстановить наиболее свежую на текущий момент резервную копию, хранящуюся локально на сервере. Если Вам необходимо восстановить более раннюю версию, уже удаленную с сервера, скопируйте её FTP по аналогии с восстановлением БД биллинга

ШАГ 1. Распаковка резервной копии

Время выполнения инструкции: 1-10 минут, в зависимости от объёма сжатых данных

1. Определите наиболее свежую резервную копию:

ll -trh /app/asr_cabinet/mnt/backup/
итого 415M
-rw-r--r-- 1 root root 107M Авг 31 02:23 backup_monthly_2016-08-31_09-23_asr_cabinet.tar.gz
-rw-r--r-- 1 root root  113 Авг 31 02:23 backup_monthly_2016-08-31_09-23_asr_cabinet.tar.gz.md5
-rw-r--r-- 1 root root 107M Янв 20 02:50 backup_weekly_2017-01-20_02-50_asr_cabinet.tar.gz
-rw-r--r-- 1 root root  112 Янв 20 02:50 backup_weekly_2017-01-20_02-50_asr_cabinet.tar.gz.md5
-rw-r--r-- 1 root root 202M Мар  1 02:50 backup_daily_2017-03-01_02-50_asr_cabinet.tar.gz
-rw-r--r-- 1 root root  111 Мар  1 02:50 backup_daily_2017-03-01_02-50_asr_cabinet.tar.gz.md5

2. Распакуйте его следующим образом:

tar -xzf /app/asr_cabinet/mnt/backup/backup_daily_2017-03-01_02-50_asr_cabinet.tar.gz -C /

Распакованные данные будут лежать в каталоге /app/asr_cabinet/var/backup_data/

Оба шага можно сделать одним скриптом
cabinet_backup=$(ls -ltrh /app/asr_cabinet/mnt/backup/*.tar.gz | awk '$9{print $9}' | tail -n 1); tar -xzf ${cabinet_backup} -C /; cabinet_backup=

ШАГ 2. Восстановление каталога Wordpress

Время выполнения инструкции: 1-10 минут, в зависимости от объёма сжатых данных

1. Скопируйте текущую папку с сайтом в другое место если она вам нужна (например, для анализа проблемы) или удалите (в примере - папка перенесена)

/bin/cp -R /app/asr_cabinet/var/wordpress/ /app/asr_cabinet/root/

2. Перенесите на её место папку из ранее распакованной резервной копии

/bin/cp -R /app/asr_cabinet/var/backup_data/var/wordpress/* /app/asr_cabinet/var/wordpress
Директории, которые попадают в бэкап, описаны в следующей статье: Рекомендации по доработке личного кабинета

ШАГ 3. Восстановление базы данных

Время выполнения инструкции: 1-2 минуты, в зависимости от размера базы

1. Перейдите в контейнер локального сайта и зайдите в папку с резервной копией

chroot /app/asr_cabinet/
cd /var/backup_data/

2. Достаньте из архива с бекапом файл mysql_wordpress.sql.gz, распакуйте его с помощью gunzip:

gunzip mysql_wordpress.sql.gz

3. Загрузите дамп в базу данных:

mysql -uroot -p wordpress  < mysql_wordpress.sql
Enter password:

После приглашения ввести пароль, просто нажмите Enter.
4. Выйдите из кабинета

exit или Ctrl+D

5. Перезапустить службу 

/app/asr_cabinet/service restart

Восстановление стандартного сайта

Время выполнения инструкции: до 5 минут

Для восстановления стандартного сайта на wordpress нужно:

  1. Остановите контейнер кабинета:
    /app/asr_cabinet/service stop
    
  2. Заменить файл БД сайта/кабинета
    rm -rf /app/asr_cabinet/var/lib/mysql/wordpress; rsync -avhP /app/asr_cabinet//skelet/var/lib/mysql/wordpress /app/asr_cabinet//var/lib/mysql/
    
  3. Удалить все пользовательские шаблоны и модули
    rm -rf /app/asr_cabinet/var/cabinet_tmpl/*
    rm -rf /app/asr_cabinet/var/cabinet_modules/*
    
  4. Восстановить стандартные файлы в cabinet_tmpl/ и cabinet_modules/
    cp -pr /app/asr_cabinet/skelet/var/cabinet_tmpl/* /app/asr_cabinet/var/cabinet_tmpl/
    cp -pr /app/asr_cabinet/skelet/var/cabinet_modules/* /app/asr_cabinet/var/cabinet_modules/
    
  5. Заменить все файлы wordpress на стандартные
    rm -rf /app/asr_cabinet/var/wordpress; rsync -avhP /app/asr_cabinet/skelet/var/wordpress /app/asr_cabinet/var/
    
  6. Заменить файл настроек контейнера на стандартный
    rsync -avhP /app/asr_cabinet/skelet/cfg/config /app/asr_cabinet/cfg/config
    
  7. Перезапустить службу 
    /app/asr_cabinet/service restart
    
Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.