К статье
Практический материал

Администрирование · 10 мин

Как изменить формат базы 1С: пошаговое руководство

Как изменить формат базы 1С: перевод из файлового в клиент-серверный режим, конвертация через конфигуратор, cnvdbfl, проверка результата и типичные ошибки.

Под «изменением формата базы 1С» обычно понимают три разные задачи: перевод файловой базы в клиент-серверный режим (SQL), обратный переход с сервера на файловый вариант и конвертацию самого файла 1Cv8.1CD между версиями формата платформы. Все три сценария выполняются штатными средствами — конфигуратором, утилитой выгрузки или средствами СУБД, — но требуют подготовки и обязательной резервной копии.

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

Ниже разобраны все три сценария с точными действиями, условиями выбора и способами проверить результат.

Как определить текущий формат базы

Прежде чем что-то менять, установите, с чем вы работаете. Откройте список информационных баз в окне запуска 1С, выделите базу и посмотрите строку в нижней части окна: для файловой базы там указан путь к каталогу с файлом 1Cv8.1CD, для клиент-серверной — имя сервера 1С и имя базы на нём.

Второй способ — в самой программе открыть раздел «О программе»: там указан режим работы (файловый или клиент-серверный) и версия платформы. Версия платформы важна, потому что файл базы, созданный под новой платформой, не откроется старой без конвертации.

Если база файловая, дополнительно проверьте размер 1Cv8.1CD. При приближении к нескольким гигабайтам файловый режим начинает работать нестабильно — это типичный сигнал к переходу на клиент-серверный вариант.

Путь вида \\server\base или C:\Bases\...Файловый режим

Ищите файл 1Cv8.1CD в указанном каталоге

Указан сервер и имя базыКлиент-серверный режим

Данные хранятся в СУБД, копию делайте средствами СУБД или через .dt

Ошибка «несовместимая версия файла базы данных»Несовпадение форматов платформы

Нужна конвертация утилитой cnvdbfl.exe

Подготовка: резервная копия и условия безопасной работы

Любая смена формата начинается с выгрузки базы. Запустите конфигуратор, откройте меню «Администрирование» → «Выгрузить информационную базу» и укажите файл с расширением .dt. Дождитесь сообщения об успешном завершении — прерывать процесс нельзя.

На время работ завершите все сеансы пользователей: в конфигураторе это делается через «Администрирование» → «Активные пользователи», в клиент-серверном варианте — через консоль кластера. Активные соединения блокируют выгрузку и загрузку.

Проверьте свободное место на диске: файл .dt может занимать заметную долю размера базы, а временные файлы при загрузке — ещё столько же. Для больших баз запас в два-три размера базы считается разумным минимумом.

Перевод базы из файлового режима в клиент-серверный

Это самый частый сценарий: компания растёт, файловая база начинает тормозить, и её переносят на связку «сервер 1С + СУБД» (MS SQL, PostgreSQL или другую поддерживаемую). Сам формат хранения при этом меняется полностью — из одного файла 1Cv8.1CD данные превращаются в таблицы СУБД.

Алгоритм переноса не зависит от выбранной СУБД и выглядит одинаково: выгружаете .dt из файловой базы, создаёте пустую клиент-серверную базу и загружаете в неё выгрузку.

Порядок действий
  1. 1
    Сделайте выгрузку .dt из файловой базы через конфигуратор
  2. 2
    Установите и настройте сервер 1С и СУБД, если их ещё нет
  3. 3
    В списке баз нажмите «Добавить» → «Создание новой информационной базы» → выберите клиент-серверный тип
  4. 4
    Укажите имя сервера 1С, тип СУБД, имя базы и учётные данные администратора СУБД
  5. 5
    Откройте новую пустую базу конфигуратором
  6. 6
    Выполните «Администрирование» → «Загрузить информационную базу» и выберите файл .dt
  7. 7
    Дождитесь завершения загрузки и реструктуризации, затем запустите базу в режиме предприятия

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

Особенности для PostgreSQL и MS SQL

Для PostgreSQL обычно используется сборка, адаптированная под 1С; стандартная сборка может работать некорректно. Для MS SQL убедитесь, что у учётной записи, от имени которой создаётся база, есть права на создание баз данных. Параметры сортировки и сравнения строк (collation) должны соответствовать требованиям платформы — иначе возможны ошибки при загрузке.

Обратный переход: из клиент-серверной в файловую базу

Обратная задача возникает при переносе базы на ноутбук для выездной работы, при отказе от серверной инфраструктуры или для создания локальной копии разработчику. Технически это тот же механизм: выгрузка .dt и загрузка в новую файловую базу.

Создайте пустую файловую базу через «Добавить» → «Создание новой информационной базы» (без шаблона), откройте её конфигуратором и загрузите .dt, выгруженный с сервера. Учтите ограничение: файловый режим не поддерживает часть серверных механизмов, и при большом объёме данных база будет работать медленнее, чем на SQL.

Конвертация файла 1Cv8.1CD между версиями платформы

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

Для конвертации служит штатная утилита cnvdbfl.exe, которая находится в каталоге bin установленной платформы. Она умеет конвертировать файл в обе стороны — и в новый формат, и в старый (с ограничениями).

bash
cnvdbfl.exe -c -i C:\Bases\Trade\1Cv8.1CD -f 8.3.8

Ключ -i задаёт исходный файл, -f — целевой формат версии, -c выполняет конвертацию. Перед запуском закройте базу во всех программах и сделайте копию файла 1Cv8.1CD — утилита работает с файлом напрямую.

Альтернатива без командной строки: открыть базу конфигуратором нужной версии — платформа сама предложит конвертировать формат при первом запуске. Этот способ проще, но требует интерактивного подтверждения.

Проверка результата после смены формата

После загрузки или конвертации не ограничивайтесь тем, что база «открылась». Войдите в режим предприятия под своей учётной записью и проверьте ключевые участки: откройте несколько документов за разные периоды, сформируйте оборотно-сальдовую ведомость или другой основной отчёт и сравните итоги с исходной базой.

Затем выполните тестирование и исправление в режиме проверки логической целостности (без исправлений, только диагностика) — это выявит скрытые проблемы переноса. Для клиент-серверной базы дополнительно убедитесь, что регламентные задания перенастроены на новый сервер и не дублируются.

Контрольные точки

Как проверить результат

Итоги основных отчётов
Норма

Совпадают с исходной базой до копейки

Тревожный признак

Расхождения в остатках — перенос неполный

Открытие документов разных периодов
Норма

Документы открываются без ошибок

Тревожный признак

Ошибки чтения, пустые табличные части

Тестирование и исправление (диагностика)
Норма

Ошибок не обнаружено

Тревожный признак

Сообщения о нарушении целостности

Регламентные задания
Норма

Выполняются один раз на новой площадке

Тревожный признак

Дублирование или отсутствие выполнения

Типичные ошибки и ограничения

Типичные ошибки
01
Загрузка .dt в базу с уже существующей конфигурацией без очистки — конфликты метаданных и ошибки реструктуризации
02
Попытка открыть файл базы новой платформой старой версией — ошибка несовместимости, решается конвертацией или обновлением платформы
03
Перенос файловой базы простым копированием 1Cv8.1CD при работающих пользователях — повреждение файла
04
Загрузка большого .dt в клиент-серверную базу с недостатком места в СУБД — обрыв загрузки и нерабочая база
05
Отсутствие проверки .dt перед удалением исходной базы — потеря данных при битой выгрузке

Помните и об ограничениях: выгрузка .dt не переносит настройки подключения к серверу, хранилище конфигурации и внешние файлы (картинки, присоединённые документы, если они хранятся вне базы). Права пользователей переносятся, но пароли в некоторых сценариях потребуется задать заново.

Если база очень большая и выгрузка .dt занимает часы, рассмотрите альтернативу: для перехода между серверами с одной СУБД эффективнее перенести базу средствами самой СУБД (резервная копия и восстановление), а не через .dt.

Маршрут решения

Как выбрать действие

Нужно сменить файловый режим на клиент-серверный или наоборотВыгрузите .dt и загрузите в новую базу нужного типа
Ошибка несовместимой версии файла базы данныхВыполните конвертацию утилитой cnvdbfl.exe или откройте базу конфигуратором нужной версии
Перенос между серверами с одинаковой СУБДИспользуйте резервную копию и восстановление средствами СУБД — это быстрее .dt
Выгрузка .dt не проходит из-за размера или ошибокСначала выполните тестирование и исправление исходной базы, затем повторите выгрузку

Частые вопросы

Можно ли изменить формат базы без конфигуратора?

Частично. Конвертацию файла между версиями платформы выполняет утилита cnvdbfl.exe без конфигуратора. А вот перенос между файловым и клиент-серверным режимом без конфигуратора невозможен — выгрузка .dt делается именно в нём (либо через пакетный запуск конфигуратора из командной строки).

Потеряются ли данные при переходе с файловой базы на SQL?

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

Сколько времени занимает загрузка .dt в клиент-серверную базу?

Зависит от размера базы, производительности сервера и СУБД: небольшие базы загружаются за минуты, большие — за часы. Загрузку удобно запускать в нерабочее время, предварительно убедившись в достатке свободного места на сервере СУБД.

Что делать, если cnvdbfl.exe выдаёт ошибку?

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

Можно ли вернуть старый формат после конвертации в новый?

Утилита cnvdbfl.exe поддерживает обратную конвертацию файла в старый формат, но только если база не была открыта и изменена новой платформой с обновлением конфигурации. Надёжный способ отката — восстановление резервной копии, сделанной до конвертации.

Нужно ли менять лицензии при переходе на клиент-серверный режим?

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

Итог

Что важно запомнить

Смена формата базы 1С всегда строится вокруг выгрузки .dt и загрузки в базу нового типа, а для файла 1Cv8.1CD между версиями платформы используется cnvdbfl.exe. Резервная копия до начала работ и проверка итогов после — обязательные этапы, которые нельзя пропускать.