Отвязываем информационную базу от хранилища конфигурации 1С
Содержание
Отключить хранилище 1С можно только из Конфигуратора: откройте базу, выберите Конфигурация → Хранилище конфигурации → Отключиться от хранилища и подтвердите действие. Конфигурация останется в базе как есть, а связь с хранилищем пропадёт — объекты больше нельзя захватывать и помещать.
Сама процедура занимает секунды. Работа администратора — до и после неё: вернуть захваченные объекты, решить судьбу несохранённых правок, убрать пользователя из списка хранилища и проверить, что конфигурация базы данных обновлена. Ниже порядок, в котором это удобно делать.
Подготовка перед отключением хранилища
Отвязка необратима в одном смысле: вернуть базу в то же состояние «как было» уже не получится. При повторном подключении 1С предложит заменить конфигурацию базы версией из хранилища, и локальные правки пропадут. Поэтому сначала разберитесь с тремя вещами.
1. Захваченные объекты. Откройте окно хранилища (Конфигурация → Хранилище конфигурации → Хранилище) и включите отбор по своим захватам. Для каждого объекта выберите один вариант:
- ✅ правки нужны всем — поместите объект в хранилище;
- ↩️ правки не нужны — отмените захват;
- 📦 правки нужны только в этой базе — оставьте как есть, после отключения они сохранятся локально.
Третий вариант коварен. Объект останется захваченным на стороне хранилища за вашим пользователем, и коллеги не смогут его менять, пока захват не снимут.
2. Резервная копия. Выгрузите конфигурацию в файл: Конфигурация → Сохранить конфигурацию в файл (получится .cf). Если база рабочая, сделайте и выгрузку .dt или бэкап средствами СУБД.
3. Кто ещё работает с хранилищем. Отключение одной базы не трогает остальные. Но если вы собираетесь закрыть хранилище целиком, предупредите всех разработчиков: каждому нужно поместить свои изменения и отвязать свои базы.
Сравните перед отключением конфигурацию базы с хранилищем: Конфигурация → Хранилище конфигурации → Сравнить конфигурацию с хранилищем. Отчёт сравнения сразу покажет, что вы потеряете или унесёте с собой.
| Ситуация | Что сделать до отключения |
|---|---|
| Копия рабочей базы для тестов | Отменить захваты, если они есть, и отключать без раздумий |
| База разработчика, задача сдана | Поместить объекты, затем отключить |
| Закрываем хранилище совсем | Получить последнюю версию, сохранить .cf, отключить все базы |
| Хранилище недоступно (сервер умер) | Сохранить .cf, отключить принудительно (см. ниже) |
Отключение базы от хранилища в Конфигураторе: пошагово
- Запустите 1С в режиме Конфигуратор под пользователем с правами администратора базы.
- Откройте дерево конфигурации:
Конфигурация → Открыть конфигурацию. На объектах будут значки замков — признак подключения. - Выберите
Конфигурация → Хранилище конфигурации → Отключиться от хранилища. - Подтвердите вопрос. Если есть захваченные объекты, программа предупредит об этом отдельно.
- Обновите конфигурацию базы данных:
Конфигурация → Обновить конфигурацию базы данных(F7), если программа об этом попросит или в заголовке дерева висит звёздочка.
Признаки успеха:
- 🔓 со всех объектов в дереве исчезли замки;
- 📋 в меню
Хранилище конфигурацииактивна командаПодключиться к хранилищу, а команд захвата и помещения больше нет; - ✏️ объекты конфигурации редактируются напрямую, без захвата.
Монопольный режим для самой отвязки не нужен: пользователи могут оставаться в базе. Он понадобится на пятом шаге, если обновление требует реструктуризации таблиц.
Если в базе есть расширения
Расширения конфигурации подключаются к хранилищу отдельно от основной конфигурации и имеют собственное хранилище. Отключение основной конфигурации их не затрагивает.
Откройте Конфигурация → Расширения конфигурации, выберите расширение и откройте его дерево. Команды хранилища для расширения находятся в меню его окна. Порядок тот же: поместить или отменить захваты, отключиться, затем обновить расширение
в базе.
Принудительное отключение и пакетный режим
Бывает, что хранилища уже нет: сервер списали, папку удалили, пароль никто не помнит. Отключение — локальная операция, она меняет данные в вашей базе, а не в хранилище. Поэтому базу можно отвязать и без связи с хранилищем.
Для сценариев, скриптов и массовой обработки копий есть параметр пакетного запуска Конфигуратора /ConfigurationRepositoryUnbindCfg. Ключ -force разрешает отключение, когда подключиться к хранилищу
невозможно или есть расхождения.
Пример для файловой базы:
"C:\Program Files\1cv8\8.3.24.1342\bin\1cv8.exe" DESIGNER /F "D:\Bases\Test" /N "Администратор" /P "пароль" /ConfigurationRepositoryUnbindCfg -force /Out "D:\Logs\unbind.log"
Пример для клиент-серверной базы:
"C:\Program Files\1cv8\8.3.24.1342\bin\1cv8.exe" DESIGNER /S "srv1c\buh_test" /N "Администратор" /P "пароль" /ConfigurationRepositoryUnbindCfg -force /Out "D:\Logs\unbind.log"
Версию платформы в пути подставьте свою. Результат и текст ошибки попадут в лог, указанный в /Out.
Не храните пароль в открытом .bat на общем диске. Для регулярных задач используйте отдельного пользователя базы с минимально нужными правами.
Типичный случай для пакетного режима — копии рабочей базы. Копия, развёрнутая из бэкапа СУБД, сохраняет привязку к хранилищу. Тестировщик открывает Конфигуратор, видит замки и случайно помещает что-то в боевое хранилище. Добавьте отвязку в скрипт, который разворачивает копию, и проблема исчезнет.
Пользователи, права и закрытие хранилища целиком
Отключение базы не удаляет пользователя из хранилища. Учётная запись остаётся, захваты за ней тоже. Наведите порядок в администрировании.
Откройте Конфигурация → Хранилище конфигурации → Администрирование (команда доступна при подключении под пользователем с административными правами хранилища). На вкладке пользователей видны все учётные записи и их права:
| Право | Что даёт |
|---|---|
| Захват объектов | Захватывать и помещать изменения |
| Изменение состава версий | Метки, комментарии, удаление версий |
| Административные функции | Управление пользователями и настройками хранилища |
Что сделать после отвязки базы:
- 🔒 если человек больше не работает с хранилищем — удалите его учётную запись или снимите права на захват;
- 🔑 если пользователь общий на несколько баз — смените ему пароль, чтобы старые копии не подключились снова;
- 👤 проверьте, что в хранилище остался хотя бы один пользователь с административными функциями, иначе управлять им станет некому.
Как снять захват уволившегося разработчика
Захват отменяет тот, кто захватил. Если этого человека нет, администратор хранилища задаёт его учётной записи новый пароль, подключает под ней отдельную копию базы
и отменяет захват. Правки, которые этот разработчик не поместил, при отмене захвата теряются — если они нужны, сначала заберите .cf с его рабочей базы.
Если хранилище закрывают полностью
- Получите последнюю версию в одну «эталонную» базу и сохраните
.cf. - Отвяжите все базы разработчиков и тестовые копии.
- Для сетевого хранилища остановите службу сервера хранилища (
crserver) на сервере. Подключённые к нему Конфигураторы получат ошибку связи — делайте это, когда никто не работает. - Если хранилище было опубликовано на веб-сервере, удалите публикацию.
- Заархивируйте каталог хранилища. Удалять его сразу не стоит: в нём вся история версий и авторов изменений.
Архив хранилища пригодится при разборе инцидентов: по истории версий видно, кто и когда изменил конкретный модуль.
Что видно и что можно сделать в режиме Предприятие
Хранилище конфигурации — инструмент разработчика. В режиме Предприятие пользователи его не видят, и команды отключения там нет. Ни в разделе Администрирование, ни в обработках типовых конфигураций хранилище конфигурации не настраивается.
Что администратор может сделать из режима Предприятие:
- 👥 завершить сеансы пользователей перед обновлением конфигурации базы данных — через консоль кластера или обработку управления сеансами в
Администрирование → Обслуживание; - 🔄 после отвязки проверить, что программа запускается без запроса на обновление и типовые регламентные задания работают.
Иногда под «хранилищем» в Предприятии имеют в виду другое — тома для хранения присоединённых файлов. Это отдельный механизм, к хранилищу конфигурации отношения не имеет и настраивается в разделе Администрирование в настройках работы с файлами. Отключать тома нужно переносом файлов, а не командами Конфигуратора.
Следы подключения после отвязки
После отключения в базе и на компьютере остаются следы. Опасности они не несут, но путают.
Список адресов в окне подключения. Конфигуратор помнит путь к хранилищу и имя пользователя. При следующей попытке подключения адрес подставится сам. Если базу отвязали навсегда, просто не подключайтесь — или перед подключением замените адрес вручную.
Локальный кеш. Конфигуратор хранит кеш хранилища в каталоге пользовательских данных 1С на компьютере разработчика. Если после отвязки и повторного подключения к другому хранилищу появляются странные ошибки чтения, закройте все Конфигураторы и очистите кеш платформы: удалите содержимое папок в %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8, кроме файлов со списком баз (ibases.v8i и подобных).
Чистку кеша делайте при закрытых сеансах 1С на этом компьютере. Открытые клиенты потеряют настройки и потребуют перезапуска.
Захваты в хранилище. Если перед отвязкой объекты не вернули, хранилище продолжает считать их занятыми. Это лечится только на стороне хранилища, см. раздел про права.