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

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

Как обновить метаданные в 1С: полная инструкция

Как обновить метаданные и конфигурацию базы данных в 1С через конфигуратор: подготовка, резервная копия, динамическое обновление, типичные ошибки и проверка результата.

Метаданные в 1С — это описание структуры прикладного решения: справочников, документов, регистров, отчётов, реквизитов и их связей. Когда разработчик добавляет новый реквизит или меняет длину поля, изменения сначала сохраняются в конфигурации, а затем должны быть применены к базе данных. Именно этот этап в обиходе называют «обновлением метаданных», а в интерфейсе конфигуратора он называется «Обновление конфигурации базы данных».

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

Что такое метаданные и когда их нужно обновлять

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

Обновление требуется в нескольких ситуациях: после доработки конфигурации разработчиком, после установки обновления от поставщика (типовой релиз), после загрузки конфигурации из файла .cf и после объединения конфигураций. Признак того, что обновление не выполнено, — сообщение «Конфигурация базы данных не соответствует сохранённой конфигурации» при запуске или попытке выгрузки.

Подготовка: резервная копия и завершение сеансов

Первый обязательный шаг — резервная копия. Для файловой базы достаточно скопировать файл 1Cv8.1CD при остановленной работе пользователей либо выполнить выгрузку в .dt через «Администрирование → Выгрузить информационную базу». Для клиент-серверной базы надёжнее делать копию средствами СУБД (MS SQL, PostgreSQL), потому что выгрузка .dt большой базы может занять очень много времени и не всегда подходит как способ быстрого отката.

Второй шаг — проверить активные сеансы. В конфигураторе откройте «Администрирование → Активные пользователи». Обычное (не динамическое) обновление требует монопольного доступа: пока в базе есть хотя бы один сеанс, платформа откажется применять изменения. Предупредите пользователей заранее и завершите сеансы через консоль кластера или принудительным завершением в конфигураторе.

Стандартное обновление через конфигуратор

Основной сценарий выглядит так. Откройте базу в режиме «Конфигуратор», убедитесь, что конфигурация открыта («Конфигурация → Открыть конфигурацию»), и внесённые изменения сохранены. Затем выберите пункт меню «Конфигурация → Обновить конфигурацию базы данных» или нажмите клавишу F7.

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

Порядок действий
  1. 1
    Сделайте резервную копию базы (.dt, копия 1Cv8.1CD или бэкап средствами СУБД)
  2. 2
    Завершите сеансы пользователей и проверьте список активных подключений
  3. 3
    Откройте конфигуратор и выполните «Конфигурация → Обновить конфигурацию базы данных» (F7)
  4. 4
    Изучите окно реструктуризации и подтвердите изменения кнопкой «Принять»
  5. 5
    Дождитесь завершения, запустите базу в режиме «Предприятие» и проверьте работу изменённых объектов

Динамическое обновление и его ограничения

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

Однако динамическое обновление имеет жёсткие ограничения. Оно невозможно при изменении типов и длин реквизитов, удалении объектов, изменении состава регистров и ряде других структурных правок. Кроме того, пользователи со старыми сеансами временно работают на старой версии метаданных: если новый код обращается к новому реквизиту, у «старых» сеансов возникнут ошибки до перезахода. Поэтому на практике динамическое обновление применяют для добавления новых объектов и отчётов, а не для изменения существующей структуры.

Сравнение вариантов

Обычное обновление (монопольно)

Подходит для любых изменений, включая реструктуризацию. Требует завершения всех сеансов, но исключает конфликты версий метаданных.

Динамическое обновление

Подходит для добавления новых объектов без изменения существующей структуры. Не требует выгона пользователей, но сеансы работают на старых метаданных до перезапуска.

Пакетное обновление через командную строку

Подходит для регулярных обновлений нескольких баз и автоматизации. Требует аккуратной настройки прав и логирования.

Обновление через командную строку и пакетный режим

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

bash
"C:\Program Files\1cv8\<версия>\bin\1cv8.exe" DESIGNER /F"D:\Bases\Trade" /NАдминистратор /PПароль /UpdateDBCfg /DisableStartupDialogs

Для серверной базы вместо /F используется параметр /S с указанием сервера и имени базы. Рекомендуется дополнять команду параметром /Out с файлом журнала — по нему можно понять, на каком этапе произошла ошибка, если обновление завершилось неудачно. Скрипт удобно ставить в планировщик на ночное время, когда нагрузка минимальна.

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

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

Частые проблемы: «Нарушена целостность структуры конфигурации» после прерванной реструктуризации, конфликт блокировок при активных фоновых заданиях, нехватка места на диске СУБД при реструктуризации больших таблиц. Отдельная ситуация — ошибка «Конфигурация базы данных не соответствует сохранённой конфигурации», которая возникает, если обновление было начато, но не завершено: в этом случае нужно повторно запустить обновление и довести его до конца либо восстановить базу из копии.

Типичные ошибки
01
Обновление без резервной копии — при сбое реструктуризации данные восстановить неоткуда
02
Динамическое обновление при изменении структуры существующих объектов — пользователи получают ошибки до перезахода в базу
03
Игнорирование окна реструктуризации — случайно удалённый реквизит обнаруживается только после потери данных
04
Обновление в разгар рабочего дня — реструктуризация больших таблиц блокирует работу на часы
05
Забытые фоновые задания — регламентные процессы держат сеансы и мешают монопольному доступу
Контрольные точки

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

Запуск режима «Предприятие»
Норма

База открывается без сообщений о рассинхронизации конфигураций

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

Ошибка «Конфигурация базы данных не соответствует сохранённой конфигурации»

Работа изменённых объектов
Норма

Новые реквизиты и отчёты доступны, документы проводятся

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

Ошибки обращения к объектам метаданных в журнале регистрации

Сеансы пользователей
Норма

Пользователи зашли в базу и работают без жалоб

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

У части пользователей ошибки — признак незавершённого динамического обновления

FAQ: частые вопросы об обновлении метаданных 1С

Чем обновление конфигурации базы данных отличается от обновления конфигурации через поддержку?

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

Можно ли откатить обновление метаданных, если что-то пошло не так?

Штатной кнопки «отменить» нет. Откат возможен только восстановлением базы из резервной копии, сделанной до обновления, либо загрузкой прежней конфигурации из файла .cf — но данные, записанные в новые реквизиты, при этом будут потеряны.

Почему платформа не предлагает динамическое обновление?

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

Сколько времени занимает реструктуризация?

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

Что делать, если обновление зависло или прервалось?

Не перезапускайте процесс сразу. Проверьте, не выполняется ли реструктуризация на стороне СУБД. Если процесс действительно прерван, восстановите базу из резервной копии и повторите обновление, устранив причину сбоя (нехватку места, блокировки, обрыв соединения).

Нужно ли обновлять метаданные после загрузки .cf-файла?

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

Итог

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

Обновление метаданных выполняется через «Обновить конфигурацию базы данных» (F7) в конфигураторе и требует резервной копии. Динамический режим подходит только для добавления новых объектов; изменение структуры — только монопольно. После обновления проверьте работу изменённых объектов и журнал регистрации.