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

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

Как снять РИБ в 1С: инструкция по отключению распределённой базы

Как снять РИБ в 1С: отключение узла распределённой базы, снятие главного узла, удаление настройки обмена. Пошаговые инструкции, риски и проверка результата.

РИБ (распределённая информационная база) в 1С — это механизм, который связывает несколько баз в единое дерево узлов: главная база и подчинённые. «Снять РИБ» обычно означает одно из трёх действий: отключить подчинённый узел от главного, превратить периферийную базу в самостоятельную или полностью удалить настройку обмена. Порядок действий различается в зависимости от того, что именно требуется получить в итоге.

Частая ситуация: база была подчинённым узлом, обмен больше не нужен (магазин закрыли, филиал перевели на другую схему работы), и требуется убрать все признаки РИБ, чтобы база работала автономно. Другой сценарий — наоборот, нужно «освободить» главную базу от подчинённых узлов. В обоих случаях перед любыми действиями обязательно делается резервная копия: ошибка при отключении РИБ может привести к потере данных или невозможности откатить изменения.

Определите, какой именно сценарий вам нужен

Под формулировкой «снять РИБ» скрываются разные задачи, и смешивать их нельзя. Если вы просто удалите настройку, не понимая структуры обмена, есть риск оставить базу в состоянии, когда она считает себя подчинённой, но связь с главным узлом потеряна — тогда часть функций может работать некорректно, а восстановить обмен без копии будет сложно.

Основные сценарии:

  • Отключить подчинённый узел навсегда — узел удаляется в главной базе, периферийная база превращается в самостоятельную путём снятия главного узла.
  • Превратить копию периферийной базы в отдельную базу — например, для тестирования или создания нового независимого юрлица на основе существующих данных.
  • Удалить план обмена целиком — когда механизм РИБ больше не используется вообще и нужно почистить конфигурацию от узлов и регистрации изменений.

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

Любые манипуляции с РИБ начинаются с двух обязательных действий. Первое — полная резервная копия обеих баз (главной и подчинённой), если обе ещё доступны. Для файловой базы достаточно скопировать файл 1Cv8.1CD или выгрузить базу в .dt через конфигуратор. Для клиент-серверной — сделать выгрузку .dt или средствами СУБД.

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

Как отключить подчинённый узел со стороны главной базы

Штатный и самый безопасный способ снять РИБ — удалить узел в главной базе. Откройте главную базу в режиме «1С:Предприятие», перейдите в раздел настройки обменов (в типовых конфигурациях это обычно «Администрирование» → «Синхронизация данных» или «Настройка синхронизации данных»). Найдите нужный узел в списке и пометьте его на удаление либо удалите настройку синхронизации.

После удаления узла главная база перестанет формировать сообщения обмена для него и ждать от него данные. Регистрация изменений по этому узлу очищается. Сам узел в подчинённой базе при этом остаётся — её нужно обрабатывать отдельно, иначе она продолжит считать себя частью РИБ.

Как снять главный узел в подчинённой базе

Чтобы периферийная база стала самостоятельной, нужно сбросить признак главного узла. В типовых конфигурациях на управляемых формах для этого есть штатная команда: в настройках синхронизации данных найдите пункт вида «Удалить настройку синхронизации» или воспользуйтесь обработкой «Установка обновлений» — в ряде конфигураций функция снятия главного узла доступна из сервисных меню.

Универсальный способ для любой базы — запуск конфигуратора с параметром сброса главного узла. Запустите конфигуратор из командной строки с ключом /ResetMasterNode:

bash
"C:\Program Files\1cv8\<версия>\bin\1cv8.exe" DESIGNER /F"D:\Bases\Perif" /ResetMasterNode

После выполнения команды база теряет связь с главным узлом и становится обычной самостоятельной базой. Учтите ограничение: снятый таким способом узел нельзя «вернуть обратно» — повторно подключить базу к тому же РИБ как тот же узел не получится, придётся создавать новый узел и выгружать начальный образ заново.

Порядок полного снятия РИБ
  1. 1
    Сделайте резервные копии главной и подчинённой баз
  2. 2
    Выполните последний обмен и убедитесь, что нет ошибок и неотправленных сообщений
  3. 3
    Удалите узел подчинённой базы в плане обмена главной базы
  4. 4
    В подчинённой базе снимите главный узел штатной командой или параметром /ResetMasterNode
  5. 5
    Проверьте автономную работу базы: создание документов, проведение, отчёты

Удаление плана обмена и очистка остатков

Когда РИБ не нужен совсем, после отключения всех узлов имеет смысл почистить остатки механизма. В каждой бывшей подчинённой базе узлы плана обмена (главный и «этот узел») можно пометить на удаление и затем удалить через «Операции» → «Удаление помеченных объектов». Предварительно убедитесь, что главный узел уже снят — иначе удаление узлов в периферийной базе может быть заблокировано.

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

Проверка результата и типичные проблемы

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

Типичная проблема — после снятия узла пользователи продолжают работать в обеих базах, и данные начинают расходиться. Чтобы этого избежать, сразу после отключения лишнюю базу закройте от пользователей: уберите её из списка баз, смените путь или ограничьте права. Вторая частая ошибка — попытка снять РИБ через удаление узлов без сброса главного узла: база остаётся «подчинённой» без главного, и исправить это можно только через /ResetMasterNode.

Типичные ошибки
01
Снятие узла до финального обмена — данные из периферийной базы теряются безвозвратно
02
Удаление узлов без сброса главного узла — база остаётся в «подвешенном» состоянии периферийной
03
Отсутствие резервной копии — при ошибке откатить изменения невозможно
04
Пользователи продолжают работать в обеих базах — данные расходятся, и свести их уже не получится
Контрольные точки

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

Признак главного узла
Норма

В плане обмена нет узла с признаком «главный», база работает автономно

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

База при обновлении требует обмен с главным узлом

Журнал регистрации
Норма

Нет повторяющихся ошибок синхронизации

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

Регулярные ошибки обмена — не отключены регламентные задания

Работа пользователей
Норма

Документы создаются и проводятся только в одной базе

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

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

Итог

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

Перед снятием РИБ сделайте резервные копии и финальный обмен. Удалите узел в главной базе, затем сбросьте главный узел в подчинённой штатной командой или параметром /ResetMasterNode. После этого отключите регламентные задания обмена и закройте пользователям доступ к лишней базе.

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

Можно ли после снятия РИБ снова подключить базу к тому же узлу?

Нет, тот же узел восстановить нельзя. Можно создать в главной базе новый узел, выгрузить из него начальный образ и подключить базу как новый подчинённый узел. Данные, внесённые в период автономной работы, при этом нужно переносить отдельно, например через обработку выгрузки-загрузки данных.

Команда /ResetMasterNode не сработала, что делать?

Проверьте, что база не открыта пользователями — монопольный доступ обязателен. Убедитесь, что путь к базе и к исполняемому файлу указаны верно, а версия платформы соответствует базе. Если конфигуратор запускается, но признак не сбрасывается, попробуйте специализированную обработку снятия главного узла, запущенную в режиме «1С:Предприятие».

Что будет с данными после снятия главного узла?

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

Нужно ли снимать РИБ, если обмен просто не используется?

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

Как понять, что база является подчинённым узлом РИБ?

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