Выгрузка базы данных 1С:Предприятие — стандартная задача для администраторов, разработчиков и даже бухгалтеров, которым нужно перенести данные на другой компьютер, сделать резервную копию или передать информацию аудиторам. Однако не все знают, что способов экспорта несколько, и каждый подходит для разных сценариев: от простого бэкапа до миграции на другую СУБД.
В этой статье разберём 5 рабочих методов выгрузки базы 1С — от встроенных инструментов платформы до SQL-скриптов для опытных пользователей. Особое внимание уделим скрытым настройкам конфигуратора, которые позволяют выгрузить данные без блокировки работы пользователей. Также рассмотрим типичные ошибки (например, обрыв соединения при больших объёмах) и способы их обхода.
Важно: процедура отличается для файлового и клиент-серверного вариантов работы, а также зависит от версии платформы (8.3.20+ поддерживает новые форматы архивов). Если вам нужно не просто скопировать базу, а перенести её на другую СУБД (например, с MS SQL на PostgreSQL), потребуются дополнительные шаги — их мы тоже затрагиваем.
1. Выгрузка через Конфигуратор 1С (метод для новичков)
Самый универсальный способ, который работает и для файлового варианта, и для клиент-серверного. Подходит для создания резервных копий или переноса базы на другой компьютер. Главное преимущество — не требует знаний SQL или администрирования серверов.
Инструкция:
- 🔹 Запустите 1С:Предприятие в режиме
Конфигуратор(удерживайтеShiftпри запуске ярлыка). - 🔹 Перейдите в меню
Администрирование → Выгрузить информационную базу. - 🔹 Укажите путь для сохранения файла (рекомендуемый формат —
.dtдля данных + конфигурации или.cfдля одной конфигурации). - 🔹 Дождитесь завершения процесса (в статусной строке отобразится прогресс).
⚠️ Внимание: Если база крупная (более 10 ГБ), выгрузка может занять несколько часов. В этом случае лучше использовать прямой SQL-дамп (раздел 4) или разбивать данные на части через Планы обмена.
Закройте все сеансы пользователей|Проверьте свободное место на диске (нужно в 1.5-2 раза больше размера базы)|Отключите антивирус (может блокировать большие файлы)|Запустите Конфигуратор от имени администратора
-->
Файл .dt содержит:
| Компонент | Описание | Можно ли редактировать? |
|---|---|---|
| Конфигурация | Структура метаданных (справочники, документы, отчёты) | Да, через Конфигуратор |
| Данные | Все записи в справочниках, документы, регистры | Нет, только программно |
| Пользователи | Список пользователей и их права | Да, в ручном режиме |
| Настройки | Параметры интерфейса, права доступа | Частично |
2. Выгрузка через «Сохранить данные» (для файлового варианта)
Этот метод подходит только для файловых баз (хранящихся в виде одного файла 1Cv8.1CD). Он проще, чем работа через Конфигуратор, но имеет ограничения: нельзя выгрузить только конфигурацию или только данные — сохраняется всё целиком.
Как сделать:
- Закройте все сеансы 1С (включая фоновые задачи).
- Найдите папку с базой (обычно
C:\Users\Public\1C\1Cv8или указанный вами путь при создании). - Скопируйте файл
1Cv8.1CDв другое место (например, на внешний диск).
⚠️ Внимание: Если база используется в сетевом режиме (несколько пользователей подключены к одному файлу), копирование «на лету» приведёт к повреждению данных. В этом случае обязательно используйте Конфигуратор (раздел 1) или 1C:Server для корректной блокировки.
Чтобы уменьшить размер копируемого файла, перед выгрузкой выполните команду Тестирование и исправление в Конфигураторе (меню Администрирование). Это удалит «мусорные» записи и сожмёт базу.
3. Выгрузка через SQL (для клиент-серверного варианта)
Если ваша база работает на MS SQL Server, PostgreSQL или другой СУБД, можно сделать дамп прямо из системы управления базами данных. Этот способ самый быстрый для больших баз (от 50 ГБ) и позволяет гибко настраивать параметры выгрузки (например, исключать временные таблицы).
Инструкция для MS SQL Server:
- Откройте SQL Server Management Studio (SSMS).
- Подключитесь к серверу, где хранится база 1С.
- Правой кнопкой по базе →
Tasks → Generate Scripts. - Выберите
Script entire database and all database objects. - Укажите путь для сохранения SQL-скрипта (формат
.sql). - Запустите выполнение скрипта на целевом сервере.
Для PostgreSQL используйте утилиту pg_dump:
pg_dump -U username -d dbname -f backup.sql
Чем SQL-дамп лучше выгрузки через Конфигуратор?
1. Скорость: дамп базы в 100 ГБ через SSMS займёт 10-20 минут, а через Конфигуратор — несколько часов.
2. Гибкость: можно выгружать отдельные таблицы (например, только документы за последний год).
3. Автоматизация: дампы легко интегрировать в скрипты резервного копирования (через cron или Задачи Windows).
⚠️ Внимание: При переносе базы между разными СУБД (например, с MS SQL на PostgreSQL) потребуется конвертация скрипта. Для этого используйте инструменты вроде SQLines или Full Convert. Также проверьте совместимость типов данных — в 1С могут использоваться специфичные для MS SQL типы (например, uniqueidentifier для GUID).
4. Выгрузка через «Планы обмена» (для частичных данных)
Если вам не нужна вся база, а только отдельные справочники или документы (например, для передачи контрагенту), используйте планы обмена. Это встроенный механизм 1С, который позволяет настраивать выборочную выгрузку по расписанию.
Как настроить:
- 🔹 Откройте конфигурацию в режиме
Конфигуратор. - 🔹 Перейдите в
Общие → Планы обмена. - 🔹 Создайте новый план обмена (например,
ВыгрузкаДляАудиторов). - 🔹 В свойствах плана укажите
Формат обмена(обычноXMLилиJSON). - 🔹 Настройте
Правила обмена— выберите, какие объекты выгружать (например, только документыРеализацияТоваровУслугза текущий год). - 🔹 Запустите выгрузку через
Администрирование → Обмен данными.
Преимущества метода:
- ✅ Можно выгружать данные без остановки работы пользователей.
- ✅ Поддерживаются дельта-обновления (выгрузка только изменённых записей).
- ✅ Формат
XMLчитаем внешними системами (например, для интеграции с сайтом).
Файл.dt через Конфигуратор|SQL-дамп|Планы обмена в XML|Копирование файла 1Cv8.1CD|Другой способ
-->
5. Автоматизированная выгрузка (для регулярных задач)
Если выгрузка базы нужна ежедневно (например, для резервного копирования), настройте автоматический процесс. Для этого подойдут:
- Встроенные задачи 1С:
- 🔹 В Конфигураторе перейдите в
Администрирование → Поддержка и обслуживание → Резервное копирование. - 🔹 Настройте расписание и путь для сохранения архивов.
- 🔹 В Конфигураторе перейдите в
- Скрипты на PowerShell/Bash:
# Пример для MS SQL (выгрузка через sqlcmd)sqlcmd -S server_name -d db_name -Q"BACKUP DATABASE [db_name] TO DISK='D:\Backups\db.bak'"
- Сторонние утилиты: 1C:Backup, SQLBackupAndFTP (для облачного хранения).
- 🔸 Время выполнения: если база большая, запускайте задачу в нерабочие часы.
- 🔸 Хранение архивов: настройте ротацию (например, хранить копии за последние 7 дней).
- 🔸 Уведомления: configure alerting (например, через Telegram-бот или email) в случае сбоя.
- 🔹
XML(черезПланы обмена) - 🔹
JSON(для современных интеграций) - 🔹
CSV(для отдельных справочников)
⚠️ Внимание: При настройке автоматической выгрузки учитывайте:
Автоматическая выгрузка через встроенные средства 1С (меню Резервное копирование) — самый надёжный способ для новичков, так как не требует знаний SQL или скриптов.
6. Выгрузка для миграции на другую СУБД
Если вы переносите базу с одной СУБД на другую (например, с MS SQL на PostgreSQL), стандартные методы не подойдут. Потребуется промежуточный формат, например:
Пошаговый алгоритм миграции:
- Выгрузите данные в
XMLчерезПланы обмена. - Преобразуйте
XMLв скрипты для целевой СУБД (используйте XSLT или специализированные инструменты вроде 1C:EDT). - Создайте новую базу на целевой СУБД и импортируйте данные.
- Проверьте целостность связей (особенно для документов и регистров).
⚠️ Внимание: При миграции между СУБД возможны проблемы с:
- 🔸 Типами данных: в PostgreSQL нет типа
nvarchar(используетсяvarchar). - 🔸 Триггерами: синтаксис триггеров в MS SQL и PostgreSQL отличается.
- 🔸 Индексами: некоторые индексы могут не перенестись автоматически.
pgloader mssql://user:pass@server/dbname postgresql://user:pass@localhost/dbname
-->
Частые ошибки и их решения
Даже при следовании инструкциям выгрузка базы 1С может завершиться с ошибками. Разберём самые распространённые:
| Ошибка | Причина | Решение |
|---|---|---|
Недостаточно памяти для выполнения операции |
База слишком большая (от 20 ГБ), или на диске мало места. | Выгружайте частями через Планы обмена или используйте SQL-дамп. |
Файл повреждён или имеет неверный формат |
Прервана выгрузка или проблема с диском. | Проверьте файл утилитой chdbfl.exe (входит в поставку 1С). |
Нет прав на запись в папку |
Конфигуратор запущен не от имени администратора. | Запустите 1С от имени админа или измените права на папку. |
Таблица заблокирована другим пользователем |
В базе активны сеансы пользователей. | Используйте Администрирование → Активные пользователи для принудительного отключения. |
Если ошибка нечная, проверьте логи 1С (папка %APPDATA%\1C\1Cv8\logs) и журналы СУБД (для MS SQL — SQL Server Error Log).
FAQ: Ответы на популярные вопросы
Можно ли выгрузить базу 1С без Конфигуратора?
Да, для файлового варианта достаточно скопировать файл 1Cv8.1CD. Для клиент-серверного — сделайте SQL-дамп через SSMS или pgAdmin.
Как выгрузить только документы за последний месяц?
Используйте Планы обмена с фильтром по дате. Альтернатива — SQL-запрос с условием WHERE Дата >='2026-01-01'.
Чем отличаются форматы.dt и.cf?
Файл .dt содержит данные + конфигурацию, а .cf — только конфигурацию (структуру метаданных без записей).
Можно ли выгрузить базу 1С в Excel?
Прямой выгрузки всей базы в Excel нет, но можно экспортировать отдельные отчёты или справочники через Файл → Сохранить как... (форматы XLSX, CSV).
Как ускорить выгрузку большой базы (100+ ГБ)?
- 🔹 Используйте SQL-дамп вместо Конфигуратора.
- 🔹 Разбейте данные на части (например, по годам).
- 🔹 Выгружайте в ночное время, когда нет нагрузки.
- 🔹 Для MS SQL включите сжатие бэкапа:
WITH COMPRESSION.