Linux Labs

Веб-стек / Ступень 8 из 9

Дамп и проверяемое восстановление

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 6 из 7 · лаба · 25 минсредняя

Восстанови базу из дампа

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

Ситуация

На этой машине работает база интернет-магазина shop в PostgreSQL. После выкладки новой версии из неё пропал заказ, а у части заказов изменились суммы.

Каждую ночь базу копируют командой pg_dump в /var/backups/shop. Команда хочет поднять рядом копию базы на момент до сбоя — отдельной базой shop_restore — и по ней вернуть данные. Саму shop пока не трогают: по ней разбирают, что сделала выкладка. Коллега уже начал восстанавливать копию в shop_restore, но не закончил и не записал, что успел.

Журнал выкладок — /var/log/shop/deploy.log. Команды администратора запускай через sudo; суперпользователем PostgreSQL подключает sudo -u postgres psql. Интернета на машине нет.

Задача

  1. В shop_restore — заказы и настройки из последней копии, снятой до сбоя.
  2. Таблицы shop_restore устроены так же, как в этой копии: столбцы, ключи, ограничения.
  3. Новый заказ в shop_restore получит тот же номер, что получил бы в момент копии.
  4. База shop_restore и всё в ней принадлежит роли shop — как в shop.
  5. База shop и файлы копий в /var/backups/shop остаются как есть.

Лаба · самостоятельно

Команды в этой лабе не даны: набирай их в терминале сам. Цели проверяются на машине после каждой команды.

Цели

0 из 5
  • В shop_restore заказы и настройки из последней копии, снятой до сбоя — ещё не выполнена
  • Таблицы shop_restore устроены, как в этой копии, — столбцы, ключи, ограничения — ещё не выполнена
  • Новый заказ в shop_restore получит тот же номер, что и в момент копии — ещё не выполнена
  • База shop_restore и всё в ней принадлежит роли shop — ещё не выполнена
  • База shop и файлы копий в /var/backups/shop не изменены — ещё не выполнена
Ctrl+Enter
Запустит машину node1 · Ubuntu 24.04

Машина запускается

Подсказки

0 из 3

Цели лабы

0 из 5
  • В shop_restore заказы и настройки из последней копии, снятой до сбоя — ещё не выполнена
  • Таблицы shop_restore устроены, как в этой копии, — столбцы, ключи, ограничения — ещё не выполнена
  • Новый заказ в shop_restore получит тот же номер, что и в момент копии — ещё не выполнена
  • База shop_restore и всё в ней принадлежит роли shop — ещё не выполнена
  • База shop и файлы копий в /var/backups/shop не изменены — ещё не выполнена
node1 Ubuntu 24.04

Цели лабы

0 из 5
  • В shop_restore заказы и настройки из последней копии, снятой до сбоя — ещё не выполнена
  • Таблицы shop_restore устроены, как в этой копии, — столбцы, ключи, ограничения — ещё не выполнена
  • Новый заказ в shop_restore получит тот же номер, что и в момент копии — ещё не выполнена
  • База shop_restore и всё в ней принадлежит роли shop — ещё не выполнена
  • База shop и файлы копий в /var/backups/shop не изменены — ещё не выполнена
Загрузка…