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

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

Как удалить информационную базу на сервере 1С

Как удалить информационную базу на сервере 1С через консоль кластера и СУБД: подготовка, бэкап, удаление из кластера и из MS SQL, типичные ошибки и проверка результата.

Удаление информационной базы на сервере 1С — операция, которая выполняется на двух уровнях: в кластере серверов «1С:Предприятие» и в системе управления базами данных (MS SQL Server, PostgreSQL или другой СУБД). Частая ошибка администраторов — удалить базу только в одном месте: тогда либо в кластере остаётся «битая» ссылка на несуществующую базу, либо в СУБД продолжают занимать место файлы данных, которые больше никто не использует.

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

Инструкция ориентирована на администраторов, работающих с консолью управления серверами 1С (MMC-оснастка) и MS SQL Server Management Studio. Для PostgreSQL логика та же, отличается только инструмент удаления базы на стороне СУБД.

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

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

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

Также убедитесь, что у вас есть необходимые права: административный доступ к кластеру серверов 1С и учётная запись с правами на удаление базы в СУБД (например, роль sysadmin или dbcreator в MS SQL Server). Без этих прав операция завершится ошибкой на одном из этапов.

Активные сеансыВ базе работают пользователи

Список сеансов в консоли кластера — нужно завершить перед удалением

Регламентные заданияФоновые задания удерживают соединение

Журнал регистрации и список заданий в консоли кластера

Права доступаНужны права в кластере и в СУБД

Учётная запись администратора кластера и роль в MS SQL/PostgreSQL

Резервная копияБез бэкапа данные не восстановить

Наличие свежего файла .dt или бэкапа средствами СУБД

Создание резервной копии перед удалением

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

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

Второй способ — резервная копия средствами СУБД. В MS SQL Server это делается через Management Studio: правый клик по базе → «Tasks» → «Back Up», тип копии — Full. Для PostgreSQL используется утилита pg_dump. Этот вариант быстрее для объёмных баз и сохраняет данные в «родном» формате СУБД.

Удаление базы из кластера серверов 1С

Основной инструмент — консоль управления серверами 1С (MMC-оснастка «Администрирование серверов 1С Предприятия»). Откройте её на сервере или на рабочем месте администратора, разверните нужный кластер, перейдите в ветку «Информационные базы» и найдите целевую базу в списке.

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

Если консоль недоступна, базу можно удалить через утилиту командной строки rac или rac.exe, которая входит в состав сервера 1С. Это полезно для автоматизации операций в скриптах.

bash
rac infobase --cluster=<ID_кластера> drop --infobase=<ID_базы> --drop-database

После выполнения команды или удаления через консоль обновите список информационных баз в кластере: удалённая база должна исчезнуть из перечня. Если она осталась в списке с ошибкой — проверьте права доступа и журнал сервера 1С.

Порядок действий
  1. 1
    Завершите все сеансы и регламентные задания в базе
  2. 2
    Создайте резервную копию (.dt или бэкап средствами СУБД)
  3. 3
    Откройте консоль управления серверами 1С и найдите базу в кластере
  4. 4
    Удалите базу через контекстное меню, выбрав нужный режим удаления БД
  5. 5
    При необходимости удалите базу данных вручную в СУБД
  6. 6
    Проверьте, что база исчезла из кластера и из списка баз СУБД

Удаление базы данных в СУБД

Если при удалении из кластера вы оставили базу данных, её нужно удалить вручную. В MS SQL Server откройте Management Studio, подключитесь к экземпляру сервера, найдите базу в списке, кликните правой кнопкой и выберите «Delete». В диалоге удаления отметьте опцию «Close existing connections» — иначе удаление завершится ошибкой, если к базе остались открытые соединения.

Для PostgreSQL используется команда DROP DATABASE через psql или pgAdmin. Учтите, что PostgreSQL не позволит удалить базу, пока к ней есть активные подключения — их нужно завершить принудительно.

sql
DROP DATABASE ИмяБазы;

После удаления базы в СУБД проверьте файловую систему сервера: иногда файлы данных (.mdf, .ldf в MS SQL) остаются на диске после сбойного удаления и продолжают занимать место. Удалите их вручную, убедившись, что они действительно относятся к удалённой базе.

Частые ошибки и способы их решения

Типичные ошибки
01
Удаление базы только из кластера — файлы данных в СУБД продолжают занимать десятки гигабайт на диске
02
Удаление только в СУБД — в кластере остаётся ссылка на несуществующую базу, при обращении к ней возникают ошибки
03
Удаление без бэкапа — при необходимости данных восстановить их невозможно
04
Не снята блокировка сеансов — СУБД отказывает в удалении из-за активных соединений
05
Недостаточно прав у учётной записи агента сервера — команда на удаление БД в СУБД завершается ошибкой доступа

Отдельная ситуация — ошибка «база занята» при удалении в MS SQL Server. Она возникает, если к базе остались подключения от агента сервера 1С или других приложений. Решение: перевести базу в однопользовательский режим с откатом текущих транзакций и повторить удаление.

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

Проверка результата

Контрольные точки

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

Список баз в консоли кластера
Норма

Удалённой базы нет в перечне

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

База отображается, при открытии — ошибка подключения

Список баз в СУБД
Норма

База отсутствует в Management Studio / pgAdmin

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

База на месте, файлы занимают место

Дисковое пространство сервера
Норма

Объём свободного места увеличился

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

Файлы .mdf/.ldf остались в каталоге данных

Список баз в стартовом окне 1С у пользователей
Норма

База недоступна или удалена из списка

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

Пользователи видят базу и получают ошибку при запуске

Финальный штрих — списки баз на клиентских машинах. Удаление базы на сервере не очищает файл ibases.v8i у пользователей: запись о базе останется в стартовом окне 1С, а при попытке запуска появится ошибка соединения. Сообщите пользователям, что запись нужно удалить из списка вручную, или обновите общий список баз, если он ведётся централизованно.

Итог

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

Удаление серверной базы 1С — двухэтапная операция: кластер плюс СУБД. Всегда делайте резервную копию, завершайте сеансы и регламентные задания до удаления, а после — проверяйте и кластер, и СУБД, и свободное место на диске.

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

Можно ли восстановить базу после удаления?

Только из резервной копии. Если есть файл .dt, создайте новую базу в кластере и загрузите данные через конфигуратор («Администрирование» → «Загрузить информационную базу»). Если есть бэкап СУБД, восстановите его средствами MS SQL или PostgreSQL и зарегистрируйте базу в кластере заново с указанием существующей БД. Без копии восстановление невозможно.

Чем удаление отличается от отключения базы?

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

Что делать, если консоль кластера не открывается или кластер недоступен?

Проверьте, запущена ли служба агента сервера 1С («Агент сервера 1С:Предприятия») на сервере. Если служба работает, но консоль не подключается, проверьте сетевые порты и права учётной записи. Как крайний вариант базу можно удалить напрямую в СУБД, а запись в кластере снять после восстановления доступа к консоли.

Нужно ли удалять базу из списка у каждого пользователя вручную?

Запись в стартовом окне 1С хранится локально в файле ibases.v8i на компьютере пользователя. Если список баз распространяется централизованно (общий файл списка или публикация через веб-сервер), достаточно обновить центральный источник. Иначе пользователи удаляют запись сами: в стартовом окне выбрать базу и нажать «Удалить» — на серверные данные это не влияет.

Можно ли удалить базу, если в ней есть активные сеансы?

Технически консоль позволит инициировать удаление, но сеансы будут разорваны аварийно, а СУБД может отказать в удалении из-за открытых соединений. Правильный порядок: сначала установить блокировку сеансов, принудительно завершить оставшиеся соединения через консоль кластера, и только потом удалять базу.

Занимает ли место на диске база, удалённая только из кластера?

Да. Удаление из кластера без удаления базы данных затрагивает только регистрацию в сервере 1С. Файлы базы данных в СУБД остаются на диске в полном объёме и продолжают занимать место, пока базу не удалят средствами MS SQL или PostgreSQL.