Эксплуатация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-ы панели увозятся с той машины, которую защищают.
Восстанавливайте туда, где не страшно
- Создайте пустую базу рядом с настоящей.
- Восстановите в неё.
- Посчитайте несколько строк и, если можете, откройте приложение на ней.
- Удалите её.
Делайте так раз в квартал — и у вас есть backup. Пропустите — и у вас есть файл.