Резервные копии сайта: что бэкапить, как часто и где хранить
Бэкап, который никто ни разу не разворачивал, — это не бэкап, а надежда. Разница выясняется в самый неудачный день.
Что именно копировать
У сайта две части, и обе одинаково критичны. Файлы: код, шаблоны, загруженные изображения и документы. База данных: тексты страниц, товары, заказы, заявки, пользователи, настройки. Копия только файлов бесполезна для магазина — вернётся дизайн без каталога и заказов.
Отдельно стоит хранить конфигурацию: настройки веб-сервера, cron-задачи, переменные окружения с ключами интеграций. Их редко включают в автоматический бэкап, а при переезде именно они отнимают больше всего времени.
Частота и глубина хранения
Частота задаётся простым вопросом: сколько данных вы готовы потерять? Для сайта-визитки, который меняется раз в квартал, хватает еженедельной копии. Для интернет-магазина с ежедневными заказами нужен как минимум суточный бэкап базы, а лучше чаще.
Глубина не менее важна: держать только вчерашнюю копию опасно. Заражение или тихая порча данных обнаруживается через неделю, и единственный бэкап к тому моменту уже содержит проблему. Рабочая схема — ежедневные копии за две недели плюс несколько ежемесячных срезов.
Где хранить: правило 3-2-1
Три копии данных, на двух разных носителях или площадках, одна — вне основной инфраструктуры. Практически: рабочий сайт, автобэкап на хостинге и выгрузка в облако или на локальный диск в офисе.
Копия рядом с сайтом закрывает только сценарий «сломали обновление». Она не спасает от блокировки аккаунта хостинга, шифровальщика или банальной неоплаты — а именно эти сценарии заканчиваются полной потерей.
Проверка восстановлением
Раз в квартал разверните бэкап на тестовом поддомене и убедитесь, что сайт открывается, база подхватывается, изображения на месте. Битые архивы, неполные дампы базы и бэкапы без папки загрузок обнаруживаются только так.
Заодно замерьте время: сколько реально занимает восстановление от «сайт лежит» до «сайт работает». Эта цифра — то, что вы честно сможете сказать руководству или клиентам в день аварии.