Обновление распределённой базы 1С: от главного узла до каждой периферии
Содержание
Чтобы обновить 1С РИБ, обновляют только главный (центральный) узел, а периферия получает новую конфигурацию через обычный обмен. Порядок такой: полная синхронизация всех узлов → обновление главного узла через Конфигуратор или сервис обновления → синхронизация, которая отправляет изменения конфигурации в подчинённые узлы → применение обновления в каждом подчинённом узле → ещё один цикл обмена для подтверждения.
Два способа доставить обновление на периферию — по сети (веб-сервис, общий каталог, FTP) или файлом сообщения, если узел офлайн. Первый быстрее и почти не требует участия людей на местах. Второй нужен для удалённых складов и магазинов без постоянного канала: администратор передаёт файл обмена, и сотрудник загружает его сам.
1. Подготовка: схема узлов и синхронизация «до нуля»
Начните не с файла обновления, а со схемы. Нарисуйте дерево: какой узел главный, какие подчинены ему напрямую, есть ли многоуровневая РИБ (подчинённый узел сам является главным для своих филиалов).
Для каждого узла выпишите:
- 🖥️ режим работы — файловый или клиент-серверный;
- 🔢 версию платформы на сервере и на рабочих местах;
- 🔁 транспорт обмена — веб-сервис, каталог, FTP, электронная почта;
- 👤 кто на месте может запустить программу под администратором;
- 🧩 подключённые расширения и внешние обработки.
Что сделать перед обновлением
- Проверьте требования нового релиза к платформе. Если релиз требует платформу с номером не ниже, чем стоит сейчас, сначала обновите платформу во всех узлах, включая рабочие места периферии. Иначе подчинённый узел получит конфигурацию, которую не сможет открыть.
- Проведите синхронизацию в каждом подчинённом узле:
Администрирование → Синхронизация данных, команда синхронизации по настройке РИБ. - Затем синхронизируйте главный узел, чтобы он принял всё, что пришло с периферии, и отправил ответ.
- Повторите цикл ещё раз и убедитесь, что пакеты пустые или почти пустые. Цель — чтобы в момент обновления в «пути» не висели неотправленные изменения.
- Сделайте резервные копии: главного узла обязательно, крупных периферийных — желательно. В файловом режиме это копия каталога базы или выгрузка
.dt, в клиент-серверном — бэкап средствами СУБД.
Договоритесь с филиалами о «тихом окне»: с момента последней синхронизации до получения обновления на периферии новые документы лучше не вводить. Документы, созданные в этом промежутке, не потеряются, но их проще контролировать, если окно короткое.
Когда обновлять
Лучшее время — вечер пятницы или утро выходного дня, когда в узлах никто не работает . Так у вас будет запас на повторный цикл обмена, если какой-то узел не примет обновление с первого раза.
Не планируйте обновление на последние дни месяца и дни сдачи отчётности. Если периферийный узел «зависнет» на применении конфигурации, его пользователи останутся без программы до приезда администратора или удалённого подключения.
Для крупной сети полезно сначала обновить один тестовый узел — например, офис рядом с администратором — и только потом остальные.
2. Обновление главного узла РИБ
Главный узел обновляется так же, как обычная база. Подчинённость в РИБ на него не влияет.
Через Конфигуратор
- Попросите пользователей выйти. Монопольный доступ нужен для обновления структуры базы данных, а большие релизы почти всегда её меняют.
- Откройте базу в Конфигураторе.
Конфигурация → Поддержка → Обновить конфигурацию, укажите файл.cfuнужного релиза.- Пройдите сравнение и объединение. Для типовой конфигурации без доработок оно проходит без вопросов.
- Выполните
Конфигурация → Обновить конфигурацию базы данных(клавишаF7) и примите изменения структуры. - Запустите программу в режиме 1С:Предприятие под администратором. Отработают обработчики обновления, и программа покажет, что изменилось в версии.
Через встроенный сервис
В конфигурациях на БСП (БП 3.0, ЗУП 3.1, УТ 11, КА, ERP) главный узел можно обновить из режима предприятия: Администрирование → Обслуживание → Обновление версии программы. Программа сама скачает релизы по цепочке, сделает копию и обновит базу.
Цепочку релизов главный узел проходит строго по порядку, который допускает поставщик. Перескочить через несколько промежуточных версий файлом .cfu нельзя: Конфигуратор предложит только те файлы, которые подходят к текущей версии.
Если в главном узле есть доработки, сначала объедините их с новым релизом и проверьте работу на копии. Ошибка в объединении уйдёт во все узлы с первой же синхронизацией.
3. Отправка новой конфигурации на периферию
Отдельной «выгрузки обновления» для подчинённых узлов делать не нужно. Изменения конфигурации включаются в сообщение обмена автоматически, как только главный узел синхронизируется с подчинённым после обновления.
Что происходит при этом:
- 📦 в сообщение попадает конфигурация в том состоянии, в котором она сейчас в главном узле;
- 📈 размер файла обмена вырастает — с сотен килобайт до десятков мегабайт;
- 🔄 главный узел будет включать изменения конфигурации в каждое сообщение, пока подчинённый узел не подтвердит приём.
Отсюда практический вывод: периферии не нужно проходить всю цепочку релизов. Если узел пропустил три обновления, он получит сразу итоговую конфигурацию.
Если узел работает через файлы
- В главном узле выполните синхронизацию с этим узлом. Файл сообщения появится в каталоге обмена или уйдёт по FTP/почте.
- Проверьте размер файла: если он вдруг весит столько же, сколько обычный пакет данных, обновление в него не попало. Чаще всего обновление главного узла не завершилось — обработчики не отработали.
- Передайте файл на периферию тем каналом, который настроен.
Расширения конфигурации
Расширения передаются в подчинённые узлы только в том случае, если в их свойствах это разрешено. Проверьте каждое расширение в списке расширений главного узла. Те, что не передаются, придётся обновлять в каждом узле отдельно — после того как узел примет основную конфигурацию.
4. Как обновить подчинённый узел РИБ
В подчинённом узле конфигурация закрыта для изменений: её «ведёт» главный узел. Обновлять периферию файлом .cfu или через интернет
-поддержку не нужно и не получится — правильный путь один, через обмен.
Конфигурации на БСП
- Запустите программу в подчинённом узле под пользователем с полными правами.
- Выполните синхронизацию:
Администрирование → Синхронизация данных. - Программа примет сообщение, обнаружит в нём изменения конфигурации и предложит установить обновление . Согласитесь.
- Программа завершит сеансы, обновит конфигурацию базы данных и перезапустится. Пользователи узла в это время должны выйти.
- После перезапуска отработают обработчики обновления, и программа догрузит данные из того же сообщения.
- Выполните ещё одну синхронизацию, чтобы отправить в главный узел подтверждение приёма.
В БСП часть отложенных обработчиков обновления в подчинённых узлах не пересчитывает данные сама, а ждёт результат из главного узла. Поэтому после обновления периферии сделайте несколько циклов обмена подряд, пока на экране обновления версии не исчезнет сообщение о незавершённой обработке данных.
Ручное применение через Конфигуратор
Если программа не предложила обновиться или выдала ошибку, примените изменения вручную:
- Убедитесь, что сообщение с конфигурацией уже загружено в узел (синхронизация прошла хотя бы до этапа приёма).
- Откройте подчинённый узел в Конфигураторе. При изменённой основной конфигурации платформа при запуске предприятия выдаёт вопрос
Конфигурация базы данных не соответствует сохраненной конфигурации. Продолжить?— это признак, что конфигурация пришла, но не применена. - Выполните
Конфигурация → Обновить конфигурацию базы данных(F7). - Запустите программу в режиме предприятия и снова синхронизируйтесь.
Многоуровневая РИБ
Узел среднего уровня сначала обновляется сам, как подчинённый, а затем передаёт новую конфигурацию своим подчинённым узлам при следующей синхронизации с ними. Идите по дереву сверху вниз и не переходите на уровень ниже, пока не завершён текущий.
5. Обмен после обновления и проверка данных
После того как все узлы обновлены, РИБ должна вернуться к обычному ритму. Проверьте три вещи.
Версии совпадают. Откройте в каждом узле О программе и сравните номер релиза. Расхождение даже в последней цифре означает, что узел не принял изменения.
Обмен идёт в обе стороны. В главном узле, в настройках синхронизации с конкретным узлом, видно дату последней успешной отправки и последнего приёма. Обе даты должны быть свежими.
Данные не потерялись. Сравните контрольные цифры главного и подчинённого узла за период «тихого окна»:
| Что сверять | Где смотреть | Признак проблемы |
|---|---|---|
| Количество документов за день | Списки документов с отбором по дате | В узле документов больше, чем в центре |
| Остатки по складу узла | Отчёт по остаткам товаров | Расхождение по одной-двум позициям |
| Оборотно-сальдовая ведомость | По организации узла | Разные итоги по счетам |
| Журнал регистрации | Администрирование → Обслуживание | Ошибки обмена после обновления |
Расхождение сразу после обновления чаще всего значит, что прошёл не весь цикл: данные из узла ещё не дошли до центра. Сделайте один-два дополнительных цикла и сверьте снова, прежде чем что-то исправлять руками.
6. Ошибки при обновлении РИБ и что с ними делать
Когда узел проще пересоздать
Если подчинённый узел долго не обменивался, получил несколько повреждённых сообщений или его база испорчена, чинить обмен дольше, чем создать узел заново.
- Убедитесь, что все документы из узла уже есть в главном узле. Если нет — выгрузите их из узла любым доступным способом до пересоздания.
- В главном узле, в настройках синхронизации с этим узлом, создайте новый начальный образ.
- Разверните образ на месте старой базы периферии.
- Проверьте пользователей и права в новом узле и запустите обмен.
Старую базу узла не удаляйте, пока новая не отработала хотя бы несколько дней. Если в ней остались документы, которые не дошли до центра, это единственная копия.
Чего делать не стоит: снимать у подчинённого узла признак подчинённости, чтобы обновить его как обычную базу. После этого узел становится независимой базой и вернуть его в РИБ без создания нового образа уже нельзя.