Как настроить бэкапы базы данных
Бэкап — это регулярная автоматическая копия базы и загруженных файлов, которая хранится отдельно от сервера и из которой вы хотя бы раз реально восстанавливались. Для Postgres это ежедневный pg_dump по расписанию, отправка копий в другое хранилище, ротация старых и регулярная проверка восстановления.
Первая помощь и как чиним
- 1Найти все данные
База, загруженные файлы, конфиги, секреты — что потеряем, если сервер исчезнет сегодня.
- 2Настроить копирование
Ежедневный дамп по расписанию, сжатие, при необходимости шифрование.
- 3Вынести копии наружу
Отдельное объектное хранилище или другой сервер с доступом только на запись.
- 4Настроить ротацию
Например, 7 ежедневных, 4 еженедельных и несколько ежемесячных копий.
- 5Проверить восстановление
Разворачиваем копию на отдельной базе и проверяем данные, повторяем по графику.
Чинить самому или отдать в «аптечку»
Мы уже наступили на эти грабли — вам не придётся
Аптечка: что с проектом?
3 вопроса — и мы скажем, сколько стоит починка. Чек-лист безопасности проекта в подарок.
Интервью с собственником и РОПом, аудит текущей CRM и источников заявок.
1–3 дняВоронки, роли, точки контроля. Согласуем до того, как что-то настраивать.
3–5 днейНастраиваем Битрикс24 и дописываем недостающие инструменты. Демо каждую неделю.
1–4 неделиОбучение, база знаний, поддержка. Дорабатываем, пока цифры не поедут вверх.
дальше — с вамиПодробнееразвёрнутое описание, этапы и нюансы
Пока в базе тестовые записи, о бэкапах никто не думает. Потом ИИ выполняет миграцию, которая удаляет колонку, кто-то случайно запускает DELETE без условия или провайдер теряет диск — и оказывается, что копии нет. Профилактика описана кратко в статье «Почему вайб-код ломается», а здесь — как сделать бэкапы по-настоящему.
Почему так происходит
- ИИ не настраивает инфраструктуру сам. Он пишет код приложения, а расписание, хранилище и ротацию нужно попросить и проверить.
- Иллюзия облака. Кажется, что Supabase, Firebase или хостинг «всё хранят». На бесплатных тарифах это часто не так, а на платных восстановление может откатить всю базу целиком, а не одну таблицу.
- Бэкап рядом с базой. Скрипт пишет дамп в папку на том же сервере. Сервер пропал — пропали и база, и копии.
- Забытые файлы. База сохранена, а загруженные фото, договоры и аватарки — нет.
- Никто не проверял восстановление. Дамп пустой, обрезанный или несовместим с версией Postgres.
Что проверить самому
- Ответьте на вопрос: если сервер исчезнет сегодня, откуда вы восстановите данные?
- Если база в Supabase, посмотрите Database → Backups: есть ли там копии на вашем тарифе.
- Если база своя, найдите задачу в cron или таймер systemd, который делает дамп.
- Проверьте, где лежат копии и есть ли свежая за вчера.
- Попробуйте восстановить копию в отдельную базу — хотя бы раз.
Минимальная схема для Postgres:
# /etc/cron.d/db-backup — каждый день в 03:00
0 3 * * * postgres pg_dump -Fc mydb > /backup/mydb-$(date +\%F).dump
Восстановление в отдельную базу:
createdb mydb_check && pg_restore -d mydb_check /backup/mydb-2026-10-27.dump
Это только начало: дальше копии нужно отправлять в другое хранилище и удалять старые.
Когда звать разработчика. Ежедневный дамп одной командой можно настроить самому, если есть доступ к серверу и вы понимаете, где он будет храниться. Помощь нужна, если база в облаке и непонятно, как снять копию, если кроме базы есть файлы пользователей, если копии нужно шифровать и отправлять в другое хранилище, если база большая и дамп мешает работе, или если вы ни разу не восстанавливались и не уверены, что получится. Худшее время разбираться с бэкапами — сразу после потери данных, поэтому лучше сделать это заранее.
Как чиним мы
Составляем список всех данных проекта и того, сколько потерь допустимо. Настраиваем автоматический дамп базы и копирование файлов, шифрование и отправку в отдельное хранилище с ротацией. Ставим уведомление, если бэкап не сделался или подозрительно маленький. Проводим тестовое восстановление при вас и оставляем короткую инструкцию «что делать, если всё пропало». Если база в Supabase, настраиваем и собственный дамп, чтобы не зависеть от тарифа. Подробнее — на странице «Аптечка вайб-кода».
Сколько стоит
Диагностика — 50 000 ₸, настройка серверной части с бэкапами — 50 000 ₸, итого от 100 000 ₸ для небольшого проекта. Хранилище для копий оплачивается провайдеру отдельно и обычно стоит недорого. Рассчитайте в калькуляторе.
Частые вопросы
Хостинг делает снимки сервера. Этого достаточно?
Это хороший второй уровень, но снимки обычно хранятся у того же провайдера и делаются редко. Нужен ещё отдельный дамп базы в другом месте.
Как часто делать бэкап?
Столько данных, сколько готовы потерять. Для большинства проектов хватает ежедневного; для заказов и оплат — чаще или с непрерывной архивацией журнала.
Есть ли бэкапы у Supabase?
На бесплатном тарифе автоматических бэкапов нет. На платных тарифах есть ежедневные, а восстановление на точку во времени — платная опция. Свой дамп всё равно полезен.
Сделаем так же у вас
Короткий созвон — и вы знаете срок и цену. Или посчитайте сами за 2 минуты.