


9 ноября Cloudflare выпустила Wrangler 4.159.0. В команде wrangler d1 export появился режим для выгрузки удалённой базы D1 в формате, который читает утилита sqlite3. В такой дамп попадают виртуальные таблицы, в том числе FTS5 для полнотекстового поиска. На Mentoring.digital разбираем, когда пригодится этот формат и какую копию сохранить для восстановления.
Обычный экспорт по-прежнему использует формат d1. Если копию планируют загрузить обратно в Cloudflare D1, оставьте этот режим и отдельно проверьте требования к виртуальным таблицам. Новый вариант sqlite3_cli_only выдаёт дамп в формате команды .dump утилиты SQLite. Cloudflare D1 не поддерживает обратный импорт такого файла.
Режим для sqlite3 работает только при экспорте удалённой базы. Wrangler не принимает с ним --local, --no-data и --no-schema. Это стоит проверить в скриптах, которые раньше выгружали только схему или только данные.
Возьмите тестовую удалённую базу с виртуальной таблицей и выполните экспорт. Подставьте имя своей тестовой базы вместо demo-db.
npx wrangler d1 export demo-db --remote --output demo.sql --compatibility sqlite3_cli_only
Откройте дамп в отдельной базе через sqlite3. Проверьте наличие виртуальной таблицы и выполните запрос MATCH по слову с заранее известным результатом. Если вам нужны оба варианта восстановления, сохраняйте в названии файла назначение копии и проверяйте импорт в каждой среде отдельно.
План проверки резервных копий и этапы восстановления можно разобрать с ментором по DevOps.