Как удалить базу 1С: файловую и клиент-серверную без следов
Содержание
Самая частая ошибка: нажали Удалить в окне запуска 1С, запись из списка пропала — а место на диске не освободилось ни на мегабайт. Так и должно быть. Эта кнопка убирает только строку из списка баз, сами данные остаются лежать на диске или на SQL-сервере.
Чтобы базу 1С действительно уничтожить и вернуть занятое место, нужно удалить два разных объекта: регистрацию базы (в списке запуска или в кластере серверов) и физические данные (папку файловой базы или базу данных в MS SQL / PostgreSQL). Ниже — как это сделать для файлового и клиент-серверного варианта, как подчистить кэш и остаточные настройки и как удалять базы пачкой скриптом.
Удаление данных необратимо. Восстановить получится только из резервной копии. Прежде чем что-то сносить — убедитесь, что база действительно не нужна, и сделайте копию (см. ниже).
Что вы на самом деле удаляете: запись или данные
Это ключевой момент, из-за которого диск «не чистится». У информационной базы 1С есть две независимые части:
- 🗂️ Регистрация базы — строка в списке запуска (файл
ibases.v8i) для файловой базы или запись в кластере серверов для клиент-серверной. Это просто ссылка: имя, путь или адрес. - 💾 Сами данные — файл
1Cv8.1CDв папке файловой базы либо база данных на SQL-сервере. Именно они занимают гигабайты.
Кнопка Удалить в стартовом окне и команда Удалить в консоли администрирования по умолчанию трогают только регистрацию. Данные при этом остаются. Поэтому порядок действий всегда такой: сначала узнайте путь к данным, потом удаляйте регистрацию, потом физически сносите данные.
Если удалить только запись из списка, а потом забыть про папку или SQL-базу — вы получите «мусорные» гигабайты, которые потом трудно соотнести с конкретной базой.
Как узнать, где лежат данные, перед удалением:
- Файловая база. В окне запуска выделите базу — внизу окна показан полный путь к каталогу. Или нажмите
Изменитьи посмотрите полеКаталог информационной базы. - Клиент-серверная. В том же окне через
Изменитьвидно имя кластера, имя базы в кластере и, если открыть параметры, — сервер СУБД и имя базы данных. Эти имена понадобятся, чтобы найти базу в SQL.
Подготовка: копия и проверка, что база точно лишняя
Перед удалением стоит потратить пять минут на проверку. Отменить операцию будет нельзя.
Как снять резервную копию в зависимости от типа:
- Выгрузка в файл. Запустите базу в режиме
Конфигуратор, затемАдминистрирование → Выгрузить информационную базу. Получится файл.dt— это полный слепок данных и конфигурации, из него база разворачивается заново. - Копия файла (только файловая). Закройте все сеансы и просто скопируйте папку с файлом
1Cv8.1CDв надёжное место. - Бэкап средствами СУБД (клиент-серверная). Сделайте backup базы данных в MS SQL Management Studio или
pg_dumpв PostgreSQL — это надёжнее выгрузки.dtдля крупных баз.
Выгрузка в .dt компактнее копии файла, но на больших базах (десятки гигабайт) идёт долго и иногда падает по памяти. Для рабочих баз надёжнее бэкап средствами SQL-сервера.
Проверьте, что в базе никого нет. В файловой достаточно, чтобы её все закрыли. В клиент-серверной посмотрите активные сеансы: в консоли администрирования раздел Сеансы по нужной базе либо командой rac session list --cluster=<uuid-кластера>. Удалять базу с живыми сеансами нельзя — пользователи получат аварийное завершение.
Как удалить файловую базу 1С
Файловая база — это обычная папка на диске или в сети. Удаляется в два шага.
Шаг 1. Уберите базу из списка запуска.
- Откройте стартовое окно 1С (список информационных баз).
- Выделите ненужную базу.
- Нажмите
Удалитьсправа. - Подтвердите. Строка исчезнет из списка.
На этом месте диск ещё полон — удалилась только ссылка.
Шаг 2. Удалите папку с данными.
- Откройте проводник и перейдите в каталог, который вы записали на этапе подготовки (там лежит
1Cv8.1CD). - Убедитесь, что это именно нужная база, а рядом нет файла блокировки
1Cv8.1CLс активной работой. - Удалите всю папку базы.
Теперь место освободилось. Если папка не удаляется с сообщением, что файл занят, — значит, база ещё где-то открыта или остался «висящий» процесс (см. раздел про ошибки).
Если файловая база лежит на сетевом диске и ею пользуется несколько человек — сначала убедитесь, что запись убрали у всех и копия точно никому не нужна. На общем ресурсе легко снести чужую рабочую базу.
Как удалить клиент-серверную базу (MS SQL / PostgreSQL)
Здесь данных две части: регистрация в кластере 1С и база данных на SQL-сервере. Удалять нужно обе, иначе на SQL-сервере останется «осиротевшая» база, занимающая место.
Вариант через консоль администрирования (графика).
- Откройте оснастку
Администрирование серверов 1С Предприятия. - Разверните кластер →
Информационные базы. - Правый клик по нужной базе →
Удалить. - В диалоге выберите, что делать с данными. Доступны варианты: оставить базу данных как есть, очистить её или удалить базу данных целиком. Чтобы освободить место — выбирайте удаление базы данных.
- Подтвердите. Если оставили базу данных на сервере — удалите её отдельно в SSMS или pgAdmin.
Вариант через rac (командная строка).
Сначала узнайте идентификаторы кластера и базы:
rac cluster list
rac infobase summary list --cluster=<uuid-кластера>
Затем удалите базу вместе с данными СУБД:
rac infobase drop --cluster=<uuid-кластера> --infobase=<uuid-базы> --drop-database
Флаг --drop-database удаляет и запись в кластере, и саму базу данных на SQL-сервере. Если указать --clear-database, данные очистятся, но пустая база данных на сервере останется. Точный список опций всегда можно посмотреть командой rac help infobase.
Если базу данных оставили на SQL-сервере — удалите её вручную:
- MS SQL: в Management Studio правый клик по базе →
Delete, илиDROP DATABASE [ИмяБазы];. - PostgreSQL: в pgAdmin удалить базу, или
DROP DATABASE "ИмяБазы";.
DROP DATABASE срабатывает только когда к базе нет активных подключений. Сначала убедитесь, что служба сервера 1С базу отпустила (запись из кластера удалена), иначе SQL откажет «база используется».
Чистка кэша и остаточных файлов
После удаления базы на компьютерах пользователей остаются её кэш и локальные настройки. На работу это не влияет, но при желании «подчистить хвосты» их удаляют.
Что остаётся и где лежит (путь к папке профиля — через Win+R → %APPDATA% и %LOCALAPPDATA%):
| Что это | Где лежит | Можно ли удалять |
|---|---|---|
| Кэш тонкого/толстого клиента | %LOCALAPPDATA%\1C\1cv8 (подпапки по идентификатору базы) | Да |
| Пользовательские настройки форм, списков | %APPDATA%\1C\1cv8 | Да, если база удалена |
| Строка в общем списке баз | файл ibases.v8i | Да, строку этой базы |
Папки кэша внутри названы длинными идентификаторами баз, поэтому вычислить нужную вручную сложно. Проще, если базы уже нет, удалить содержимое папки кэша целиком — платформа пересоздаст кэш для оставшихся баз при следующем запуске.
Про реестр отдельно: в 1С 8.3 список информационных баз хранится в файле ibases.v8i, а не в реестре Windows. Искать и чистить ветки реестра из-за удалённой базы не нужно — это пережиток старых версий и установки самой платформы, а не конкретной базы. Если встретите совет «почистить реестр
после удаления базы» — для 8.3 он лишний.
Общий список баз (который виден всем пользователям компьютера или раздаётся через 1CEStart.cfg) правится в файле ibases.v8i: это текстовый файл, где каждая база — отдельная секция [Имя базы]. Удалите секцию нужной базы — и она пропадёт из общего списка.
Автоматизация: удаление нескольких баз скриптом
Когда баз много (например, чистят тестовый сервер или старые копии), ручной перебор утомляет. Процесс автоматизируют.
Файловые базы — удаление папок. Простой скрипт PowerShell сносит каталоги по списку:
$bases = @(
"D:\Bases\test_2024",
"D:\Bases\arhiv_kopiya"
)
foreach ($b in $bases) {
if (Test-Path "$b\1Cv8.1CD") {
Remove-Item -Recurse -Force $b
Write-Host "Удалено: $b"
} else {
Write-Host "Пропущено (не база 1С): $b"
}
}
Проверка на наличие 1Cv8.1CD страхует от удаления чужой папки — сносится только то, что действительно является базой 1С.
Клиент-серверные базы — через rac. В bat-файле можно последовательно удалить несколько баз, подставляя их идентификаторы:
rac infobase drop --cluster=<uuid> --infobase=<uuid-base1> --drop-database
rac infobase drop --cluster=<uuid> --infobase=<uuid-base2> --drop-database
Идентификаторы баз предварительно собирают командой rac infobase summary list --cluster=<uuid>.
Скрипт удаления полезно держать отдельно от резервного копирования: сначала отрабатывает бэкап-задание, потом — с задержкой в день-два — чистка. Так между копией и удалением есть окно на «передумать».
Что делать, если база не удаляется
Три ситуации встречаются чаще всего.
1cv8.exe и 1cv8c.exe, предупредив работающих, что их сеансы оборвутся. После этого удалите папку. Отдельный признак открытой базы — файл блокировки 1Cv8.1CL в папке базы.rac), чтобы служба сервера 1С отпустила базу. Затем выполняйте DROP DATABASE. В крайнем случае перед удалением базу переводят в однопользовательский режим.1Cv8.1CD. Для клиент-серверной — удалите базу данных на SQL-сервере (она не исчезает сама при удалении регистрации без флага удаления данных).Ещё пара моментов, о которых забывают:
- 🔸 Регламентные задания и расписания. Если база была в списке централизованных бэкапов или в планировщике обслуживания — уберите её и оттуда, иначе задания будут падать с ошибкой «база не найдена».
- 🔸 Ссылки в интеграциях. Внешние обмены, веб-сервисы, публикации на веб-сервере могут ссылаться на удалённую базу. Публикацию на IIS/Apache снимают отдельно — через
Конфигуратор → Администрирование → Публикация на веб-серверекнопкойОтключить.
Когда базу удалять не стоит
Иногда правильный ответ — не удалять вовсе. Проверьте эти случаи, прежде чем сносить данные.
- 🔸 База нужна «на всякий случай». Старую базу не обязательно держать в рабочем списке. Выгрузите её в
.dt, положите файл в архив и удалите рабочую копию — данные сохранятся, место освободится, а список не захламляется. - 🔸 По базе ещё сдают отчётность или идут проверки. Пока не истёк срок хранения учётных данных (а для бухгалтерских документов это годы), базу надёжнее заархивировать, а не уничтожать. Внезапный запрос из налоговой по старому периоду — обычное дело.
- 🔸 Это одна из нескольких баз в общем кластере. Убедитесь, что удаляете именно ту базу: имена в кластере бывают похожими (
buh,buh_test,buh_old). Сверьтесь по дате последнего изменения и размеру, прежде чем выполнятьdrop. - 🔸 База используется в обменах или публикациях. Если на неё завязаны автоматические выгрузки, РИБ или веб-сервисы, удаление оборвёт цепочку. Сначала отключите обмены, потом удаляйте.
Если ни один пункт не подходит и данные точно не нужны — удаляйте смело, предварительно сняв копию.
Частые вопросы
Можно ли восстановить базу после удаления?
.dt, копии файла 1Cv8.1CD или SQL-бэкапа. Если копии нет, данные потеряны безвозвратно. Специальных «корзины» или отмены у удаления базы нет.Чем отличается удаление базы от удаления программы 1С?
Программы и компоненты Windows и баз не трогает.Удалил базу из списка на своём компьютере — она удалилась у всех?
ibases.v8i или 1CEStart.cfg.Нужно ли удалять что-то в реестре Windows?
ibases.v8i, а не в реестре. Чистить реестр нужно разве что при полном удалении платформы, и то её штатный деинсталлятор делает это сам.Как удалить только данные, оставив пустую базу?
rac — --clear-database): структура остаётся, данные стираются. Для файловой проще развернуть в ту же папку пустую конфигурацию из .cf или .dt.