Почему прерывается выгрузка информационной базы в .dt и как исправить ошибку «Сеанс работы завершен администратором»?

Системный администратор 1С:Управление торговлей IT и автоматизация бизнеса
← На главную

При работе с высоконагруженными или объемными информационными базами 1С системные администраторы часто сталкиваются с проблемой внезапного прерывания длительных операций. Одной из наиболее критичных задач является выгрузка базы в файл .dt. Рассмотрим ситуацию, когда при попытке сохранения конфигурации или выгрузки данных процесс завершается ошибкой: «Соединение с сервером баз данных разорвано администратором Microsoft OLE DB Driver 19 for SQL Server: Named Pipes Provider: Could not open a connection to SQL Server». Проанализируем причины этой проблемы и разберем по шагам методы её решения.

Анализируем влияние драйвера Microsoft OLE DB Driver 19

В современных инсталляциях всё чаще используется 19-я версия драйвера OLE DB. Важно понимать, что начиная с версии 19.0, этот драйвер по умолчанию требует обязательного шифрования соединений (параметр Encryption=Mandatory). Если на вашем SQL-сервере не настроен доверенный сертификат или в строке соединения не прописано явное доверие к сертификату сервера, соединение может быть разорвано операционной системой. Чтобы правильно сконфигурировать среду, рекомендуем изучить инструкцию по настройке регламентных операций MS SQL Server, где детально разобраны особенности работы с версиями 2019 и выше.

Для устранения этой причины проверим настройки подключения в консоли администрирования кластера 1С. Если используется драйвер версии 19, попробуем временно переключиться на версию 18 (MSOLEDBSQL), которая отличается большей стабильностью в контексте работы с текущими релизами платформы 1С. Также убедимся, что в строке соединения SQL-сервера не установлены избыточные ограничения на проверку подлинности.

Переходим с протокола Named Pipes на TCP/IP

Ошибка прямо указывает на использование Named Pipes Provider. Протокол "Именованные каналы" (Named Pipes) исторически считается более медленным и чувствительным к сетевым задержкам по сравнению с TCP/IP, особенно при передаче сотен гигабайт данных — для уменьшения объема есть инструмент для сжатия и обрезки базы 1С. Для серверных баз 1С крайне рекомендуется использовать именно TCP/IP.

Выполним следующие шаги для принудительной настройки протокола:

  1. Откроем SQL Server Configuration Manager.
  2. Перейдем в раздел SQL Server Network Configuration -> Protocols for MSSQLSERVER.
  3. Убедимся, что TCP/IP находится в состоянии Enabled, а Named Pipes желательно перевести в Disabled (если другие приложения не требуют иного).
  4. В консоли управления кластером 1С при указании имени сервера баз данных попробуем форсировать протокол, указав адрес в формате ServerName,1433 (имя сервера и порт через запятую). Это заставит систему использовать TCP-соединение.

Настройка времени ожидания (Timeouts) в SQL Server

Процесс формирования .dt — это, по сути, одна гигантская транзакция на чтение. Если база весит 250 Гб, чтение может длиться часами. Проанализировать текущие задержки и настройки можно, если анализировать SQL сервер глазами 1С-ника с помощью специализированных обработок, которые показывают ожидания и нагрузки в удобном для разработчика виде.

Разберем, как изменить параметр Remote Query Timeout в свойствах SQL-сервера:

  1. Зайдем в SQL Server Management Studio (SSMS).
  2. Нажмем правой кнопкой на корень сервера и выберем Properties.
  3. Перейдем на вкладку Connections.
  4. В поле Remote query timeout (in seconds, 0 = no timeout) установим значение 0.

Это исключит разрыв соединения со стороны SQL-сервера из-за длительного выполнения запроса к таблицам базы данных.

Использование автономного сервера для выгрузки

Одним из самых эффективных способов выгрузки тяжелых баз является использование утилиты автономного сервера 1С. Это позволяет исключить влияние клиентского приложения (Конфигуратора) и сетевых задержек. Чтобы не ошибиться в синтаксисе, вы можете использовать конструктор параметров командной строки, который поможет сформировать правильную команду для версий платформы 8.3.20 - 8.3.24.

Воспользуемся командой ibcmd. Пример синтаксиса для выполнения выгрузки выглядит следующим образом:


ibcmd infobase dump --db-type=mssql --db-server=SQL_SERVER_NAME --db-name=BASE_NAME --db-user=sa --db-pwd=password --out=C:\Backup\base_dump.dt

Этот метод работает быстрее и стабильнее, так как процесс не зависит от сеанса пользователя в ОС и настроек тайм-аутов консоли кластера.

Проверка ресурсов сервера и процесса rphost

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

Проанализируем следующие настройки в консоли администрирования сервера 1С:

  1. Допустимый объем памяти: проверьте, не установлены ли жесткие лимиты на процесс.
  2. Интервал перезапуска: убедитесь, что параметр Рестарт рабочих процессов не настроен на слишком короткий промежуток времени.
  3. TempDB и место на дисках: убедимся, что на диске, где расположен TempDB SQL-сервера, достаточно свободного места (не менее 50-100 Гб для такой базы), так как выгрузка активно использует временные таблицы.

Тестирование и исправление логической целостности

Иногда причиной разрыва соединения является повреждение данных в специфических таблицах. Рекомендуется выполнить стандартные процедуры обслуживания:

Заключение

Выгрузка базы объемом 250 Гб в формат .dt требует тонкой настройки сетевых протоколов и параметров SQL-сервера. Если вам необходимо настроить регулярный процесс, используйте скрипты для резервного копирования в dt без закрытия сессий, которые позволяют автоматизировать выгрузку для MS SQL или PostgreSQL. Для дополнительного спокойствия можно настроить контроль состояния бэкапов через Telegram (есть мониторинг журнала регистрации и уведомление в Telegram), чтобы оперативно получать уведомления об успешном завершении операции. Помните, что для баз такого объема основным средством резервного копирования должны быть Native SQL Backups, а выгрузка в .dt — лишь вспомогательный инструмент.

← На главную