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

Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.

Изменения (17)

просмотр истории страницы
Для восстановления стандартного сайта на wordpress нужно:
{toc}

1. Зайти в chroot кабинета
h2. Восстановление из резервной копии

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

Резервные копии хранятся в каталоге */app/asr_cabinet/mnt/backup/* и сохраняются вместе с контрольными суммами.
{info}В примере показано как восстановить наиболее свежую на текущий момент резервную копию, хранящуюся локально на сервере. Если Вам необходимо восстановить более раннюю версию, уже удаленную с сервера, скопируйте её FTP по аналогии с [восстановлением БД биллинга|CarbonBilling:Восстановление БД биллинга из резервной копии.]

{info}

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

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

*1.* Определите наиболее свежую резервную копию:
{code}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{code}
*2.* Распакуйте его следующим образом:
{code}tar -xzf /app/asr_cabinet/mnt/backup/backup_daily_2017-03-01_02-50_asr_cabinet.tar.gz -C /{code}
Распакованные данные будут лежать в каталоге */app/asr_cabinet/var/backup_data/*

{tip:title=Оба шага можно сделать одним скриптом}
{code}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={code}
{tip}

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

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

*1.* Скопируйте текущую папку с сайтом в другое место если она вам нужна (например, для анализа проблемы) или удалите (в примере - папка перенесена)
{code}/bin/cp -R /app/asr_cabinet/var/wordpress/ /app/asr_cabinet/root/{code}
*2.* Перенесите на её место папку из ранее распакованной резервной копии
{code}/bin/cp -R /app/asr_cabinet/var/backup_data/var/wordpress/* /app/asr_cabinet/var/wordpress{code}

{info}
Директории, которые попадают в бэкап, описаны в следующей статье: [Рекомендации по доработке личного кабинета|http://docs.carbonsoft.ru/x/IYghCw]

{info}


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

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

*1.* Перейдите в контейнер локального сайта и зайдите в папку с резервной копией
{code}
chroot /app/asr_cabinet/
cd /var/backup_data/
{code}
2. Заменить файл БД сайта/кабинета
*2.* Достаньте из архива с бекапом файл *mysql_wordpress.sql.gz*, распакуйте его с помощью gunzip:
{code}
yes | cp /skelet/var/lib/mysql/wordpress/* /var/lib/mysql/wordpress/
gunzip mysql_wordpress.sql.gz
{code}
3. Заменить ВСЕ настройки wordpress на стандартные
*3.* Загрузите дамп в базу данных:
{code}
yes | cp -R /skelet/var/wordpress/* /var/wordpress/
mysql -uroot -p wordpress < mysql_wordpress.sql
Enter password:
{code}
4. Выходим из кабинета

После приглашения ввести пароль, просто нажмите Enter.
*4.* Выйдите из кабинета
{code}
exit или Ctrl+D
{code}
*5.* Перезапустить службу&nbsp;
{code}
/app/asr_cabinet/service restart
{code}

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

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

Для восстановления стандартного сайта на wordpress нужно:
# Остановите контейнер кабинета:
{code}
/app/asr_cabinet/service stop
{code}
# Заменить файл БД сайта/кабинета
{code}
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/
{code}
# Удалить все пользовательские шаблоны и модули
{code}
rm -rf /app/asr_cabinet/var/cabinet_tmpl/*
rm -rf /app/asr_cabinet/var/cabinet_modules/*
{code}
# Восстановить стандартные файлы в cabinet_tmpl/ и cabinet_modules/
{code}
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/
{code}
# Заменить все файлы wordpress на стандартные
{code}
rm -rf /app/asr_cabinet/var/wordpress; rsync -avhP /app/asr_cabinet/skelet/var/wordpress /app/asr_cabinet/var/
{code}
# Заменить файл настроек контейнера на стандартный
{code}
rsync -avhP /app/asr_cabinet/skelet/cfg/config /app/asr_cabinet/cfg/config
{code}
# Перезапустить службу&nbsp;
{code}
/app/asr_cabinet/service restart
{code}