Файловая база или SQL: как поменять формат хранения данных 1С 8.3
Содержание
Расширение файла базы 1С 8.3 вручную не меняют: переименование 1Cv8.1CD в .mdb, .dbf или .sql просто сломает подключение. Чтобы изменить формат хранения, базу выгружают в файл .dt (Конфигуратор → Администрирование → Выгрузить информационную базу) и загружают в новую базу нужного типа: файловую или клиент-серверную на MS SQL Server или PostgreSQL.
Выбор простой. Файловый вариант подходит для одного компьютера и небольшой группы пользователей. SQL нужен, когда в базе работают десятки человек, база выросла до десятков гигабайт или нужны регламентные резервные копии средствами СУБД. Данные в формате DBF остались только у 1С 7.7: в 8.3 их переносят отдельной обработкой, а не сменой расширения.
Если вы искали, как изменить расширение конфигурации (файл .cfe), это другая задача. Расширение правят в Конфигураторе: Конфигурация → Расширения конфигурации, затем открывают нужное расширение и после правок выполняют обновление конфигурации базы данных.
Какие форматы хранения есть у базы 1С 8.3
У 1С:Предприятия 8.3 два варианта работы, и от них зависит, где физически лежат данные.
| Вариант | Где хранятся данные | Что видно на диске | Когда выбирают |
|---|---|---|---|
| Файловый | Один файл в каталоге базы | 1Cv8.1CD и служебные папки (1Cv8Log и др.) | 1–5 пользователей, локальная сеть, без отдельного сервера |
| Клиент-серверный | Таблицы в СУБД | Файлов базы у пользователя нет, только строка подключения | Много пользователей, большие объёмы, резервирование средствами СУБД |
Для клиент-серверного варианта платформа поддерживает четыре СУБД:
- 🗄️ Microsoft SQL Server;
- 🐘 PostgreSQL — нужна сборка с доработками под 1С (например, Postgres Pro или дистрибутив PostgreSQL, адаптированный для 1С);
- 🏢 IBM Db2;
- 🔶 Oracle Database.
Чего в 8.3 нет совсем:
- ❌ формата DBF — он был у 1С 7.7, где каждая таблица хранилась отдельным файлом
.dbfс индексами.cdx; - ❌ формата MDB — это файлы Microsoft Access, к 1С они не относятся;
- ❌ способа «переключить» формат в свойствах базы — только выгрузка и загрузка.
Отсюда главный вывод: смена расширения базы 1С 8.3 всегда означает перенос данных в новую базу. Старая при этом остаётся нетронутой, что удобно для отката.
Подготовка перед тем, как менять формат базы
Перенос через .dt безопасен, но несколько минут подготовки снимают большинство проблем на этапе загрузки.
Проверьте платформу и права
- Узнайте версию платформы: в пользовательском режиме откройте меню с тремя полосками и выберите
Справка → О программе. - На новом месте (компьютере или сервере 1С) поставьте платформу того же номера или выше. Файл
.dt, выгруженный более новой платформой, старая может не загрузить. - Убедитесь, что у вас есть пользователь 1С с ролью «Полные права» и пароль от него. Без этого Конфигуратор не откроется.
Освободите базу
Выгрузка в .dt требует, чтобы в базе не работали другие пользователи.
Перед выгрузкой предупредите коллег: все открытые сеансы нужно завершить, иначе Конфигуратор не начнёт операцию. Делайте перенос в конце дня или в выходные, когда простой не мешает работе.
Проверьте целостность файловой базы
Если исходная база файловая, проверьте её до переноса. Повреждения в 1Cv8.1CD иногда проявляются именно при выгрузке.
- 🔧 В Конфигураторе:
Администрирование → Тестирование и исправление, отметьте проверку логической целостности и реструктуризацию таблиц. - 🔧 Утилитой
chdbfl.exeиз папкиbinустановленной платформы — она проверяет физическую структуру файла. Перед запуском закройте базу у всех пользователей.
Сделайте копию каталога базы целиком до «Тестирования и исправления»: режим исправления меняет данные необратимо.
Переход с DBF: как перенести базу 1С 7.7 в 8.3
Если у вас база в формате DBF, это 1С 7.7. Поменять ей расширение и открыть в 8.3 нельзя: у версий разная структура данных и разные конфигурации. Нужен перенос данных между программами.
Как это устроено в общих чертах:
- В 8.3 создаётся новая база с типовой конфигурацией (например, Бухгалтерия предприятия 3.0).
- В новой базе запускается встроенный помощник перехода с 7.7. В типовых конфигурациях он поставляется вместе с программой; быстрее всего найти его поиском по меню по слову «7.7».
- Помощник подключается к базе 7.7 (нужна установленная платформа 7.7 на том же компьютере) или работает через промежуточный файл выгрузки.
- Переносятся справочники и остатки на дату перехода. Документы прошлых периодов обычно не переносят: учёт начинают с остатков.
Что учесть при переносе из DBF
- 📅 Переходите с начала квартала или года — меньше сверок по НДС и отчётности.
- 🔤 Базы 7.7 в DBF часто содержат «битые» индексы. Перед переносом запустите в 7.7 тестирование и исправление с переиндексацией.
- 🧾 После загрузки сверьте оборотно-сальдовую ведомость в 7.7 и в 8.3 на дату перехода.
- 🧩 Доработанные конфигурации 7.7 переносятся типовым помощником не полностью: нестандартные справочники и реквизиты придётся переносить отдельно.
Если база 7.7 работала на MS SQL, а не на DBF, порядок тот же: перенос идёт через помощник новой конфигурации, а не через СУБД.
Как перевести файловую базу 1С 8.3 на SQL
Это самый частый случай смены формата: файловая база выросла, и её переносят на сервер 1С с MS SQL Server или PostgreSQL.
Шаг 1. Выгрузите базу в .dt
- Запустите базу в режиме
Конфигуратор. - Откройте
Администрирование → Выгрузить информационную базу. - Укажите путь и имя файла, например
D:\Backup\buh_2026.dt, нажмите «Сохранить». - Дождитесь сообщения о завершении выгрузки.
То же самое из командной строки, без открытия Конфигуратора:
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Bases\Buh" /N"Администратор" /P"пароль" /DumpIB"D:\Backup\buh.dt" /Out"D:\Backup\dump.log"
Номер версии в пути замените на установленный у вас.
Шаг 2. Создайте пустую базу на сервере 1С
На компьютере с клиентом 1С:
- В окне запуска нажмите «Добавить» → «Создание новой информационной базы».
- Выберите создание базы без конфигурации — данные придут из
.dt. - Укажите вариант «На сервере 1С:Предприятия».
- Заполните параметры:
| Поле | Что указать |
|---|---|
| Кластер серверов 1С:Предприятия | Имя сервера 1С, например srv1c |
| Имя информационной базы в кластере | Короткое латинское имя, например buh |
| Тип СУБД | MS SQL Server или PostgreSQL |
| Сервер баз данных | Имя сервера СУБД (может совпадать с сервером 1С) |
| Имя базы данных | Имя базы в СУБД, обычно как в кластере |
| Пользователь и пароль базы данных | Учётная запись СУБД с правом создавать базы (для MS SQL часто sa, для PostgreSQL — postgres) |
| Смещение дат | 2000 для MS SQL Server, 0 для PostgreSQL |
| Создать базу данных в случае её отсутствия | Включить |
| Установить блокировку регламентных заданий | Включить на время переноса |
- Нажмите «Далее» и «Готово». Платформа создаст базу в кластере и в СУБД.
Шаг 3. Загрузите .dt в серверную базу
- Откройте новую серверную базу в Конфигураторе. Пользователей в ней пока нет, пароль не нужен.
- Выберите
Администрирование → Загрузить информационную базу. - Укажите файл
.dtи подтвердите замену данных. - После загрузки Конфигуратор предложит перезапуститься — согласитесь.
Командная строка для того же действия:
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /S"srv1c\buh" /RestoreIB"D:\Backup\buh.dt" /Out"D:\Backup\restore.log"
Шаг 4. Проверьте результат
- ✅ Войдите в базу пользователем с полными правами.
- ✅ Сравните ключевые итоги: оборотно-сальдовую ведомость, остатки товаров, последние документы.
- ✅ Снимите блокировку регламентных заданий в свойствах базы через консоль кластера, когда убедитесь, что старая база больше не используется. Иначе обе базы будут одновременно загружать банк, курсы и обмены.
Для клиент-серверного варианта нужна лицензия на сервер 1С:Предприятия. Клиентские лицензии при этом остаются прежними. MS SQL Server требует собственных лицензий, сборки PostgreSQL для 1С распространяются бесплатно.
Обратный переход: из SQL в файловую базу
Порядок зеркальный. В серверной базе выгружаете .dt, создаёте пустую файловую базу
в нужном каталоге и загружаете в неё файл. Так делают, чтобы отдать копию аудитору, разработчику или поработать с базой без сервера.
Настройка списка баз и путей после смены формата
После переноса у пользователей в окне запуска остаётся старая строка. Её нужно поправить, иначе люди продолжат работать в старой базе.
Вручную на каждом компьютере
- В окне запуска выделите базу и нажмите «Изменить».
- Переключите вариант расположения на «На сервере 1С:Предприятия».
- Укажите кластер и имя базы в кластере.
- Сохраните.
Для файловой базы, которую перенесли в другой каталог, достаточно на том же шаге указать новый путь к папке с 1Cv8.1CD.
Через файл списка баз
Список хранится в файле ibases.v8i в профиле пользователя:
%APPDATA%\1C\1CEStart\ibases.v8i
Строка подключения выглядит так:
[Бухгалтерия]
Connect=Srvr="srv1c";Ref="buh";
Для файловой базы:
[Бухгалтерия]
Connect=File="\\fileserver\Bases\Buh";
Готовый ibases.v8i можно разослать пользователям или подключить общий список через настройки окна запуска.
Старую файловую базу после переноса переименуйте или переместите в архивную папку. Так никто случайно не продолжит в ней работать по старому ярлыку.
Ошибки при смене формата базы и что с ними делать
Большинство проблем возникает на этапах подключения к серверу и загрузки .dt.
Если не помогло
- 🔁 Загрузите
.dtв новую файловую базу на любом компьютере. Если там всё открывается, проблема в настройке сервера или СУБД, а не в данных. - 📄 Посмотрите лог из параметра
/Out— в нём текст ошибки без обрезки. - 🧹 При странном поведении клиента после переноса очистите кэш: запустите 1С с ключом
/ClearCacheили удалите папку базы в%APPDATA%\1C\1cv8. Делайте это при закрытой 1С.