Резервное копирование и восстановление
Это руководство для оператора, а не встроенная служба аварийного восстановления. В репозитории нет единой команды полного резервного копирования и восстановления CMS. Копирование сайта из пакета в собственном формате Dee Wan не заменяет восстановление: оно переносит поддерживаемый текущий контент с новыми ID, а не полную историю и аккаунты установки. Перенос с историей добавляет сохранённые версии и события процесса согласования, но тоже использует новые ID и не переносит аккаунты, учётные данные и журнал аудита, поэтому восстановлением он тоже не является.
Определите набор восстановления
Заголовок раздела «Определите набор восстановления»Запишите точную ревизию CMS, историю миграций, привязки развёртывания и соответствие каждого ID сайта его БД контента и хранилищу медиа. Включите управляющую БД и все назначенные БД контента, а не только выбранный сайт. Конфигурацию и данные для восстановления секретов храните отдельно от экспорта контента, в соответствии с принятой у владельца развёртывания процедурой защиты.
Одной копии БД недостаточно, чтобы сохранить сами медиафайлы. Сохраните используемые объекты R2 или файлы Cloudflare Images и идентификаторы, нужные для их выдачи. Для восстановления отделённых бэкендов включите сгенерированные репозитории и ваш собственный код. Опубликованный снимок намеренно не содержит черновиков, аккаунтов CMS и истории версий и не заменяет резервную копию CMS.
Сделайте согласованную копию
Заголовок раздела «Сделайте согласованную копию»Согласуйте с оператором приостановку записи, включая публикации по расписанию, импорт и другие процессы, изменяющие данные. Создайте согласованную копию каждой БД средствами экспорта или резервного копирования, которые поддерживает провайдер. Для локальных БД используйте операцию SQLite backup. Не копируйте живой файл SQLite, игнорируя WAL. Запишите время каждой части и сохраните соответствующие медиа и конфигурацию до возобновления записей.
Проверьте, что экспортированные файлы читаются и не пусты, содержат все ожидаемые БД и сайты, а ссылки на медиа ведут к сохранённым файлам. Храните защищённую опись с контрольными суммами. Эта версия исходников не определяет сроки хранения и команды экспорта или восстановления для конкретного провайдера. Владелец развёртывания должен проверить их для реального аккаунта, прежде чем полагаться на копию.
Сначала восстановите в изоляции
Заголовок раздела «Сначала восстановите в изоляции»Используйте отдельную явно разрешённую среду. Восстановите согласованные состояния БД, миграций, конфигурации и медиа, не привязывая восстановленную установку к живой БД другого сайта. До проверки держите cron, исходящие вебхуки и доставку сборок отключёнными: восстановленная очередь иначе может повторить эффекты во внешних системах. Не включайте автоматически старые сессии и внешние учётные данные: сначала определите, нужны ли они.
Запустите соответствующую ревизию исходников, проверьте миграции БД до любого обновления. Затем проверьте доступ администратора, принадлежность сайтов, роли, отказ в доступе к приватным моделям, определения моделей, черновики, опубликованные версии, переводы, связи и медиа. Сверьте с описью количество записей по сайтам и моделям, а также содержимое нескольких характерных записей. Успешный импорт SQL ещё не означает успешного восстановления.
Переключение и откат
Заголовок раздела «Переключение и откат»Получите подтверждение владельца, прежде чем направлять рабочий трафик в восстановленную среду. Сохраните прежнюю среду и набор восстановления до подтверждения успешного восстановления. Возобновляйте фоновые изменения данных и отправку во внешние системы только после проверки ожидающих заданий и их идемпотентности. Для отделённых развёртываний также выполните проверку развёртывания и медиа.
Источники и границы: backend/src/lib/import/bundle-handlers.ts реализует копирование сайта из собственного формата Dee Wan, а не полное восстановление. backend/src/lib/graduate/source-db.ts использует SQLite backup. scripts/d1.ts содержит защищённый экспорт D1. Не используйте команду, которая удаляет установку только ради резервной копии. О переключении исходной системы см. миграцию.
Стабильная версия ещё не выпущена (pre-MVP)
Коммит исходного кода: fe23db481c422b40e317b92fc98116b4c0c26a87 (с локальными изменениями)
Дата сборки (UTC): 2026-10-18T09:22:34.630Z
Коммит для обновления: не определён: в рабочей копии есть изменения. Примечания к выпуску