Что включить в резервную копию

Начните с перечня компонентов сервиса. Страницы сайта можно восстановить из исходников, но сообщения клиентов, заявки, вложения и рабочие настройки обычно меняются отдельно. Для каждого компонента укажите владельца, место хранения и способ восстановления.

  • Код и сборка: исходники, версия релиза и сведения о зависимостях.
  • Базы данных: клиенты, обращения, сотрудники, права и история операций.
  • Загрузки: документы, изображения и другие вложения пользователей.
  • Конфигурация: параметры запуска, веб-сервер, фоновые задачи и расписания.
  • Секреты и ключи: данные подключения, ключи шифрования и подписи с отдельным защищённым хранением.

Репозиторий с кодом не заменяет копию базы. Снимок VPS тоже стоит оценивать по составу: сохраняет ли он все нужные диски, файлы и настройки. Секреты не публикуют в открытом репозитории и не прикладывают к обычному отчёту.

Как копировать работающую базу данных

Пока CRM принимает обращения, записи продолжают изменяться. Для базы нужен способ резервирования, который учитывает её работу: штатная процедура СУБД, согласованный снимок либо заранее спланированная остановка записи. Простое копирование одного файла активной SQLite может не охватить актуальные данные и связанные журналы.

Для SQLite существует официальный Online Backup API: он создаёт согласованную копию базы средствами самой SQLite. Конкретный способ выбирают с учётом версии СУБД, нагрузки и требований сервиса. После создания копии проверяют её целостность, а затем возможность открыть её в отдельном окружении.

Где хранить копию вне основного сервера

Если архив лежит только рядом с приложением на том же VPS, отказ диска или потеря доступа к серверу затронет и его. Нужна копия в отдельном хранилище, доступность которого не зависит от основного VPS. Это может быть другой сервер, объектное хранилище или иной согласованный носитель.

Для переноса проверяют размер и контрольную сумму, например SHA-256: совпадение помогает убедиться, что получены те же байты. Оно не подтверждает полноту архива или исправность приложения. Доступ к хранилищу ограничивают, передачу и хранение защищают, а порядок получения ключей описывают отдельно.

Локальная и внешняя копии — разные результаты. Успешное создание архива на VPS не подтверждает его доставку в независимое хранилище. Каждый этап проверяют отдельно.

Как выбрать расписание и срок хранения

Сначала ответьте на два вопроса: сколько последних изменений допустимо потерять и сколько времени бизнес может работать без сервиса. Это помогает выбрать частоту копирования и план восстановления. Если заявки поступают постоянно, копии раз в сутки могут оказаться недостаточными.

Срок хранения должен позволять вернуться к состоянию до незамеченной ошибки. Полезно сохранять несколько поколений копий и проверять свободное место. Старые архивы удаляют по согласованному правилу, сохраняя необходимые проверенные версии. Перед крупным обновлением дополнительно создают отдельную копию текущего состояния.

Как проверить, что восстановление действительно работает

  1. Развернуть копию отдельно. Проверять её на тестовом окружении, не подменяя работающую базу.
  2. Проверить данные. Открыть базу, сравнить контрольные показатели и убедиться, что документы доступны.
  3. Проверить рабочие действия. Вход, права пользователей, просмотр карточек и сохранение тестового обращения.
  4. Изолировать внешние отправки. Во время теста не рассылать клиентам письма и сообщения и не создавать реальные заказы.
  5. Зафиксировать результат. Записать дату копии, шаги восстановления, затраченное время и обнаруженные проблемы.

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

Что контролировать после настройки

Для каждой задачи важны время последнего успешного запуска, объём копии, результат проверки и статус внешнего переноса. Отдельно отслеживают ошибки доступа, нехватку места и превышение допустимого возраста последней копии. Запущенный таймер сам по себе не доказывает, что резервирование завершилось.

Настройка резервирования зависит от конкретного сайта и CRM. Её можно обсудить вместе с разработкой сайта и кабинета, интеграцией рабочих систем или работой с базами данных. Этот материал — план проверки, а не сообщение о включённом внешнем резервировании на вашем сервере.

Проверим, что нужно вашему сервису

Расскажите, где размещены сайт и CRM, какие данные меняются и какие копии уже есть. Обсудим состав резервирования, независимое хранение и проверку восстановления.

Обсудить резервное копирование