Администрирование · 11 мин
Как прервать выгрузку базы 1С
Как остановить выгрузку базы 1С в файловом и клиент-серверном режиме: отмена через интерфейс, завершение процессов, риски для данных и проверка результата.
Выгрузка базы 1С в файл .dt или через конфигуратор может занимать десятки минут и даже часы, если база большая. Иногда процесс нужно остановить: запустили выгрузку по ошибке, поняли, что не хватит места на диске, или база требуется пользователям, а выгрузка блокирует работу. Способ прерывания зависит от того, как именно запущена выгрузка и в каком режиме работает база — файловом или клиент-серверном.
Главное, что нужно понимать: прерванная выгрузка не повреждает саму информационную базу, потому что выгрузка — это операция чтения. Однако недописанный файл .dt будет непригоден для загрузки, а резкое завершение процессов в клиент-серверном режиме может оставить «висячие» сеансы и фоновые задания на сервере. Поэтому останавливать процесс нужно осмысленно, а после — проверять состояние базы и удалять недописанный файл.
Ниже разобраны все рабочие способы: от штатной отмены до аварийного завершения процессов, а также проверка результата и типичные ошибки администраторов.
Как понять, что выгрузка действительно идёт
Прежде чем прерывать, убедитесь, что процесс выгрузки реально выполняется, а не завис. В конфигураторе при выгрузке в .dt отображается окно с индикатором прогресса и счётчиком обработанных объектов. Если счётчик растёт — процесс идёт. Если цифры не меняются 10–15 минут, а размер файла .dt на диске не увеличивается, возможно, процесс завис, и прерывание тем более оправдано.
Дополнительные признаки работающей выгрузки: процесс 1cv8.exe (или 1cv8c.exe) в диспетчере задач потребляет процессор и память, файл .dt на диске растёт в размере, а в клиент-серверном режиме на сервере СУБД видна активная длительная транзакция чтения.
Можно отменить через интерфейс или дождаться завершения
Проверьте место на диске и завершайте процесс принудительно
После прерывания файл будет неполным — удалите его
Освободите место и перезапустите выгрузку
Штатная отмена выгрузки в конфигураторе
Самый безопасный способ — отменить выгрузку средствами самой платформы. В окне прогресса выгрузки в .dt есть кнопка «Отмена» (или сработает клавиша Esc в некоторых версиях платформы). После нажатия платформа корректно завершает текущую операцию и прекращает запись в файл.
Учтите, что отмена срабатывает не мгновенно: платформа дожидается завершения обработки текущего объекта. На больших таблицах (например, регистры накопления с миллионами записей) ожидание может занять несколько минут. Это нормально — не пытайтесь в этот момент «убивать» процесс, дайте платформе завершить отмену.
После отмены конфигуратор остаётся открытым, соединение с базой сохраняется, и можно сразу запустить выгрузку заново с другими параметрами или продолжить работу.
- 1В окне прогресса выгрузки нажмите «Отмена»
- 2Дождитесь прекращения операции — счётчик остановится, окно закроется
- 3Проверьте, что конфигуратор не завис и отвечает на действия
- 4Удалите недописанный файл .dt, чтобы не перепутать его с полной копией
- 5При необходимости запустите выгрузку заново
Прерывание через диспетчер задач в файловом режиме
Если окно выгрузки не отвечает или кнопка отмены недоступна, завершите процесс принудительно. В файловом режиме это безопасно для базы: выгрузка только читает данные, и обрыв чтения не вносит изменений в файл базы 1Cv8.1CD.
Откройте диспетчер задач (Ctrl+Shift+Esc), найдите процесс 1cv8.exe, соответствующий конфигуратору, и выберите «Снять задачу». Если открыто несколько сеансов 1С, ориентируйтесь по заголовку окна в разделе «Приложения» или по потреблению ресурсов — выгружающий процесс обычно активно нагружает один из процессорных потоков.
После принудительного завершения рекомендуется выполнить тестирование и исправление базы (пункт «Администрирование — Тестирование и исправление» в конфигураторе) только если появятся ошибки при входе. Само по себе прерывание выгрузки повреждений не вызывает, но лишняя проверка не помешает, если база и раньше работала нестабильно.
Остановка выгрузки в клиент-серверном режиме
В клиент-серверном варианте логика та же, но появляется дополнительный уровень — сервер 1С:Предприятия и СУБД (MS SQL, PostgreSQL, Oracle). Выгрузка в .dt выполняется через сервер 1С, поэтому завершение клиентского процесса 1cv8.exe на вашем компьютере разорвёт соединение, и серверный сеанс завершится по таймауту.
Более управляемый способ — завершить сеанс через консоль кластера серверов 1С. Откройте консоль администрирования, найдите свой сеанс в списке сеансов базы (он будет активным, с длительным временем вызова СУБД) и удалите его. Сервер корректно прервёт выполнение операции.
Если выгрузка запущена как фоновое задание (например, регламентная выгрузка по расписанию), в консоли кластера найдите соответствующее фоновое задание и завершите его, либо отключите регламентное задание через консоль заданий в самой базе.
Как выбрать способ прерывания
Прерывание выгрузки средствами SQL и пакетных сценариев
Иногда под «выгрузкой» понимают не файл .dt, а резервную копию средствами СУБД — например, BACKUP DATABASE в MS SQL или pg_dump в PostgreSQL. Такие операции прерываются своими инструментами: в MS SQL — отмена в окне выполнения или команда KILL для идентификатора сессии, в PostgreSQL — функция pg_cancel_backend или pg_terminate_backend с нужным PID.
Если выгрузка запущена пакетным файлом через командную строку конфигуратора (параметр /DumpIB), найдите процесс 1cv8.exe, запущенный из командной строки, и завершите его. Определить нужный процесс помогает командная строка процесса — её видно в диспетчере задач при включённом столбце «Командная строка».
SELECT pid, state, query FROM pg_stat_activity WHERE state = 'active'; SELECT pg_cancel_backend(<pid>);Отмена резервного копирования на уровне СУБД также безопасна для рабочей базы: недописанный файл бэкапа просто не будет создан или окажется неполным. Но не прерывайте таким способом операции записи в саму базу — например, восстановление из копии или загрузку .dt.
Что делать после прерывания
Первое действие — удалить недописанный файл .dt. Он внешне выглядит как обычный файл выгрузки, но загрузить из него базу невозможно, а хранение таких файлов рано или поздно приводит к путанице и попытке восстановления из битой копии. Переименуйте или удалите файл сразу.
Второе — проверьте, что база доступна и пользователи могут работать. Войдите в базу в режиме предприятия, откройте несколько документов и журналов. В клиент-серверном режиме дополнительно проверьте в консоли кластера, что завершённый сеанс исчез из списка и не осталось зависших фоновых заданий.
Третье — перед повторным запуском выгрузки убедитесь, что на диске достаточно свободного места. Ориентировочно файл .dt занимает от половины до полного размера базы в зависимости от степени сжатия и состава данных. Если места впритык, выгрузка снова прервётся, уже по ошибке.
Как проверить результат
Вход выполняется, документы открываются
Ошибки при входе, сообщения о повреждении
Прерванный сеанс отсутствует в консоли кластера
Сеанс висит с длительным вызовом СУБД
Недописанный .dt удалён или переименован
Неполный файл лежит рядом с полными копиями
Запас свободного места превышает размер базы
Диск почти заполнен
Типичные ошибки при прерывании выгрузки
Самая частая ошибка — путать выгрузку с загрузкой. Прервать выгрузку безопасно, а вот прерывание загрузки .dt в базу оставляет базу в недогруженном, неработоспособном состоянии. Перед завершением любого процесса убедитесь, что именно выполняется: заголовок окна и направление операции указаны в интерфейсе конфигуратора.
Вторая ошибка — завершение серверных процессов rphost или ragent вместо конкретного сеанса. Это обрывает работу всех пользователей кластера, а не только выгрузку. Завершать нужно сеанс через консоль или клиентский процесс, а не службу сервера 1С целиком.
Третья ошибка — повторный запуск выгрузки в тот же файл без проверки места на диске. Если первая попытка прервана из-за нехватки места или зависла на записи, вторая завершится так же.
Как не допустить необходимости прерывания
Большинство ситуаций с принудительной остановкой выгрузки предотвращаются планированием. Запускайте выгрузку в нерабочее время, когда пользователи не работают: это и ускорит процесс, и исключит жалобы на блокировки в файловом режиме, где выгрузка требует монопольного доступа.
Заранее оцените размер будущего файла и проверьте диск. Для регулярных копий настройте автоматическую выгрузку по расписанию через пакетный режим конфигуратора с логированием — тогда зависший процесс легко найти по лог-файлу и времени запуска.
Для больших клиент-серверных баз рассмотрите резервное копирование средствами СУБД вместо выгрузки в .dt: такие копии создаются быстрее, не требуют монопольного доступа и прерываются штатными средствами СУБД без последствий.
Что важно запомнить
Прерывание выгрузки безопасно для базы: она только читается. Используйте штатную отмену, при зависании — завершение процесса или сеанса через консоль кластера. После прерывания удалите неполный файл .dt, проверьте доступность базы и свободное место перед повторным запуском. Никогда не прерывайте загрузку и не завершайте серверные процессы целиком.
Повредит ли базу прерывание выгрузки в .dt?
Нет. Выгрузка — это операция чтения данных, она не изменяет содержимое базы. Пострадает только файл выгрузки: он окажется неполным и непригодным для загрузки. Саму базу после прерывания можно продолжать использовать в обычном режиме.
Кнопка «Отмена» нажата, но выгрузка не останавливается. Это нормально?
Да. Платформа завершает обработку текущего объекта перед остановкой, и на больших таблицах это занимает заметное время. Подождите несколько минут. Если счётчик не двигается дольше 10–15 минут и файл не растёт, завершайте процесс через диспетчер задач.
Как прервать выгрузку, запущенную по расписанию ночью?
Найдите соответствующее фоновое задание в консоли кластера серверов 1С и завершите его, либо завершите процесс 1cv8.exe, запущенный планировщиком. Чтобы выгрузка не запустилась снова, отключите регламентное задание или задачу в планировщике Windows.
Можно ли продолжить прерванную выгрузку с места остановки?
Нет, механизма докачки у выгрузки в .dt нет. Выгрузку нужно запускать заново с самого начала, предварительно удалив неполный файл и убедившись, что на диске достаточно места.
Что делать, если случайно прервал загрузку, а не выгрузку?
База после прерванной загрузки .dt находится в нецелостном состоянии. Не запускайте в ней пользователей. Восстановите базу из резервной копии, сделанной до загрузки, либо повторите загрузку в ту же базу с самого начала — загрузка .dt полностью перезаписывает содержимое.
Чем выгрузка в .dt отличается от бэкапа средствами SQL при прерывании?
По безопасности разницы нет: обе операции только читают рабочую базу и прерываются без последствий. Различие в инструментах: .dt отменяется через конфигуратор или завершение сеанса, а бэкап СУБД — через отмену запроса в среде SQL. Бэкап СУБД обычно быстрее и не требует монопольного доступа.