Администрирование · 11 мин
Как запустить обновление информационной базы в 1С
Как запустить обновление информационной базы 1С: подготовка, резервная копия, запуск в конфигураторе и пользовательском режиме, типичные ошибки и проверка результата.
Обновление информационной базы 1С — это процедура приведения структуры базы данных в соответствие с новой версией конфигурации. Она запускается после обновления самой конфигурации либо автоматически при первом входе в программу, когда платформа обнаруживает расхождение версий. Понимание того, где и как запускается этот процесс, позволяет избежать блокировки работы пользователей и потери данных.
Ошибка «Необходимо выполнить обновление информационной базы» знакома почти каждому администратору и пользователю 1С. Она возникает в файловых и клиент-серверных базах, в типовых и доработанных конфигурациях. В большинстве случаев процедура проходит штатно, но при нехватке ресурсов, активных сеансах или повреждении данных обновление может завершиться с ошибкой.
Ниже описаны условия, при которых требуется обновление, способы его запуска, подготовительные действия, контроль результата и разбор типичных проблем.
Когда требуется обновление информационной базы
Процедура нужна всякий раз, когда структура метаданных конфигурации изменилась и не совпадает со структурой данных в базе. Типичные ситуации: установка нового релиза типовой конфигурации, перенос доработок из тестовой базы в рабочую, восстановление базы из копии, созданной на другой версии конфигурации.
Признак необходимости обновления — сообщение при запуске программы о том, что версия конфигурации базы данных отличается от версии сохранённой конфигурации. В пользовательском режиме появляется окно с предложением выполнить обновление; в конфигураторе — запрос при попытке сохранить изменения или запустить отладку.
Отдельный случай — отложенные обработчики обновления. Некоторые релизы выполняют часть изменений не сразу, а в фоновом режиме после первого запуска. Пока отложенные обработчики не завершены, часть функций программы может быть недоступна, а следующее обновление конфигурации — заблокировано.
Подготовка: что сделать до запуска обновления
Главное правило — обновление информационной базы выполняется только при наличии актуальной резервной копии. Для файловой базы достаточно скопировать файл 1Cv8.1CD в отдельный каталог, убедившись, что все пользователи вышли из программы. Для клиент-серверной базы делается выгрузка через конфигуратор (Администрирование → Выгрузить информационную базу) или средствами СУБД.
Второе обязательное условие — отсутствие активных сеансов. В файловом режиме попросите всех пользователей закрыть программу; в клиент-серверном — завершите сеансы через консоль кластера или установите блокировку сеансов заранее. Обновление при активных подключениях либо не запустится, либо завершится ошибкой блокировки таблиц.
Проверьте свободное место на диске: в процессе реструктуризации создаются временные копии таблиц, и для крупных баз может потребоваться объём, сопоставимый с размером самой базы. Также убедитесь, что версия платформы соответствует требованиям нового релиза конфигурации — они указаны в сопроводительной документации поставщика.
- 1Завершите все сеансы пользователей и фоновые задания
- 2Сделайте резервную копию базы
- 3Проверьте свободное место на диске и версию платформы
- 4Проверьте наличие незавершённых отложенных обработчиков
- 5Только после этого запускайте обновление
Запуск обновления в пользовательском режиме
Самый простой сценарий — обновление при первом входе после установки нового релиза. Пользователь с правами администратора запускает программу, и платформа выводит окно с информацией о смене версии конфигурации и предложением выполнить обновление. Нужно нажать кнопку подтверждения и дождаться завершения, не закрывая окно и не выключая компьютер.
Ход процесса отображается в окне с перечнем выполняемых обработчиков. На небольших базах обновление занимает несколько минут, на крупных клиент-серверных — может идти часами. Это нормально: признак зависания — не длительность сама по себе, а отсутствие изменений в журнале выполнения в течение очень продолжительного времени при нулевой нагрузке на сервер.
После завершения программа перезапустится или предложит продолжить работу. Если в релизе есть отложенные обработчики, они начнут выполняться в фоне — прогресс виден в разделе администрирования, обычно в подсистеме «Обновление версии программы» или аналогичной.
Запуск обновления через конфигуратор
Для клиент-серверных баз и сложных обновлений предпочтителен запуск через конфигуратор. Откройте базу в конфигураторе под пользователем с полными правами. Если конфигурация уже обновлена, при попытке запустить отладку или открыть предприятие появится запрос на обновление базы данных — подтвердите его.
Если запрос не появляется, обновление запускается вручную: меню Конфигурация → Обновить конфигурацию базы данных. Платформа покажет список изменений структуры (реструктуризацию) — проверьте его и подтвердите. Пункт «Обновить конфигурацию базы данных» доступен и с параметром динамического обновления, но он применим только для ограниченного набора изменений.
Динамическое обновление
Динамическое обновление позволяет применить изменения без монопольного доступа, не отключая пользователей. Оно работает, только если изменения не затрагивают структуру существующих таблиц: добавление новых объектов, изменение модулей, форм, макетов. Добавление реквизита в существующий справочник или документ уже требует реструктуризации и монопольного режима.
После динамического обновления пользователям нужно перезапустить сеансы, иначе они продолжат работать со старой версией кода в памяти. Для продуктивных баз с критичными данными динамическое обновление применяют с осторожностью: при неудаче откат без копии невозможен.
Способы запуска обновления
Подходит для файловых баз и простых релизов. Запускается автоматически при входе, требует прав администратора в программе.
Рекомендуется для клиент-серверных и крупных баз. Полный контроль над процессом, но требуется отключение пользователей.
Без отключения пользователей, но только для изменений без реструктуризации таблиц. Сеансы нужно перезапустить.
Обновление через пакетный режим и командную строку
Для автоматизации обновления нескольких баз используется пакетный запуск конфигуратора с параметрами командной строки. Это удобно для ночных регламентных обновлений и тестовых стендов.
"C:\Program Files\1cv8\<версия>\bin\1cv8.exe" DESIGNER /F"D:\Bases\MyBase" /N"Администратор" /P"пароль" /UpdateDBCfg /Out"D:\Logs\update.log"Ключ /UpdateDBCfg запускает обновление конфигурации базы данных, /Out сохраняет протокол в файл — по нему удобно проверять результат при автоматическом сценарии. Для клиент-серверной базы вместо /F указывается параметр /S с адресом сервера и именем базы. Код возврата 0 означает успешное завершение.
При пакетном обновлении важно заранее убедиться в отсутствии сеансов: скрипт должен либо проверять блокировку базы, либо запускаться в гарантированно нерабочее время. Ошибка монопольного доступа прервёт обновление, но не повредит базу — процедуру можно будет повторить.
Отложенные обработчики обновления
Многие типовые конфигурации делят обновление на две фазы: основную, выполняемую при первом запуске, и отложенную, идущую в фоне уже во время работы пользователей. Отложенные обработчики переносят данные, пересчитывают итоги, заполняют новые служебные реквизиты.
Статус отложенных обработчиков проверяется в интерфейсе программы: в типовых решениях это раздел «Администрирование» → «Поддержка и обслуживание» → «Результаты обновления программы» (точное название зависит от конфигурации). Там видно, сколько обработчиков завершено, сколько выполняется и есть ли ошибки.
Пока отложенные обработчики не завершены, нельзя устанавливать следующий релиз — механизм обновления откажется с соответствующим сообщением. Если обработчик завис или завершился ошибкой, сначала разбираются с причиной (обычно указаны данные, вызвавшие сбой), затем процедуру перезапускают.
Проверка результата и типичные ошибки
После завершения обновления проверьте версию конфигурации в сведениях о программе — она должна совпадать с установленным релизом. Затем откройте несколько ключевых документов и отчётов, выполните типовые операции: проведение документа, формирование регламентированного отчёта. Ошибки при открытии форм часто указывают на незавершённые отложенные обработчики.
Типичные ошибки при обновлении: отсутствие монопольного доступа (активные сеансы), нехватка места на диске при реструктуризации, недостаточная версия платформы, повреждённые данные, выявленные обработчиками. В каждом случае текст ошибки в журнале регистрации или окне сообщений указывает направление поиска.
Как проверить результат
Совпадает с номером установленного релиза
Старая версия или сообщение о необходимости обновления
Все обработчики завершены без ошибок
Есть обработчики в статусе «ошибка» или «выполняется» очень долго
Операции выполняются штатно
Ошибки открытия форм, сообщения об отсутствующих данных
Нет ошибок за период обновления
Записи об ошибках реструктуризации или обработчиков
Частые вопросы
Можно ли обновлять базу, пока в ней работают пользователи?
Только через динамическое обновление и только если изменения не затрагивают структуру существующих таблиц. Полноценное обновление с реструктуризацией требует монопольного доступа — все сеансы должны быть завершены.
Обновление идёт уже несколько часов — это нормально?
Для крупных клиент-серверных баз длительная реструктуризация — обычное явление. Проверьте нагрузку на сервер СУБД: если процессы активны, обновление работает. Прерывать его нельзя — дождитесь завершения.
Что делать, если обновление завершилось ошибкой?
Не запускайте обновление повторно «вслепую». Сначала изучите текст ошибки в окне сообщений и журнале регистрации, устраните причину (нехватка места, активные сеансы, проблемные данные). Если база повреждена — восстановите её из резервной копии и повторите процедуру.
Нужно ли обновлять платформу перед обновлением конфигурации?
Да, если новый релиз конфигурации требует более свежую версию платформы. Требования указаны в документации к релизу. Сначала обновляется платформа, затем конфигурация, после чего запускается обновление информационной базы.
Как отключить запрос обновления при входе пользователей?
Запрос показывается только пользователям с правами на обновление; обычные пользователи при расхождении версий получат сообщение о невозможности входа. Правильное решение — не отключать запрос, а выполнить обновление до начала рабочего дня.
Можно ли отменить уже запущенное обновление?
Штатной отмены нет. Прерывание процесса реструктуризации может повредить базу. Единственный безопасный способ вернуться к прежнему состоянию — восстановление из резервной копии, сделанной до обновления.
Что важно запомнить
Обновление информационной базы запускается при первом входе после смены релиза или вручную через конфигуратор. Обязательные условия — резервная копия, отсутствие активных сеансов и достаточная версия платформы. После обновления проверьте версию конфигурации и статус отложенных обработчиков, не устанавливая следующий релиз до их завершения.