RE:NODE
Обзор хостинга

Эксплуатация5 мин чтения

Backup базы данных и доказательство, что он восстанавливается

Dump, который вы ни разу не восстанавливали, — это гипотеза. Как его снять, где хранить и как проверить, не трогая production.


Backup базы ломается иначе, чем backup файлов. Наполовину скопированный файл мира явно битый; наполовину согласованный dump восстановится чисто и будет тихо неверным. Инструменты, чтобы этого избежать, есть, и это один флаг.

Снимайте согласованный dump

pg_dump --format=custom --no-owner mydb > mydb.dump
mongodump --archive=mydb.archive --gzip --db=mydb

Оба читают согласованный снимок, а не таблицу, которая меняется под ними. Копирование каталога данных работающей базы — нет, и поэтому «я забэкапил папку» — самый частый способ выяснить, что backup им не был.

Храните в другом месте

Архив на том же хранилище, что и база, которую он защищает, покрывает ровно один сценарий — вы сами удалили свою таблицу. Про диск и про машину он не покрывает ничего. Именно поэтому backup-ы панели увозятся с той машины, которую защищают.

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

  1. Создайте пустую базу рядом с настоящей.
  2. Восстановите в неё.
  3. Посчитайте несколько строк и, если можете, откройте приложение на ней.
  4. Удалите её.
Делайте так раз в квартал — и у вас есть backup. Пропустите — и у вас есть файл.