Лишняя копия информационной базы: что удалить и что оставить
Содержание
Чтобы убрать копию базы
1С из окна запуска, выделите её в списке и нажмите Удалить — файлы на диске при этом останутся. Чтобы удалить копию полностью, после этого сотрите её каталог с файлом 1Cv8.1CD (файловая база) или удалите базу в консоли кластера вместе с базой данных на SQL-сервере (клиент-серверный вариант).
Есть и третий случай: в шапке программы висит предупреждение, что база — копия, и регламентные задания не работают. Тогда удалять ничего не нужно, достаточно снять блокировку работы с внешними ресурсами. А старые резервные копии в папке бэкапов удобнее чистить скриптом по расписанию.
Три способа убрать копию базы и чем они отличаются
Слово «убрать» в 1С значит разное. Перед тем как что-то нажимать, определите, какой результат вам нужен.
| Что делаете | Что исчезает | Что остаётся | Можно вернуть |
|---|---|---|---|
| Удаление из списка запуска | Строка в окне запуска | Все данные базы | Да, через Добавить → существующая база |
| Удаление файлов с диска | Каталог базы целиком | Ничего, кроме бэкапов | Только из резервной копии |
| Удаление из кластера | Регистрация базы на сервере 1С | База данных на SQL, если её не удалили отдельно | Да, если база данных на SQL цела |
| Снятие признака копии | Предупреждение и блокировка | Сама база, данные, список | Не требуется |
Самая частая ошибка — удалить строку
из списка и считать, что копия стерта. Файл 1Cv8.1CD продолжает занимать место: у базы Бухгалтерии за пару лет это легко 5–15 ГБ.
Обратная ошибка опаснее: стереть каталог, решив, что это копия, а это была рабочая база. Поэтому первый шаг в любом сценарии — узнать, куда указывает строка в списке.
Как понять, где лежит копия
- Откройте окно запуска 1С и выделите базу.
- Внизу окна отобразится строка подключения:
File="D:\1C\Buh_copy"для файловой базы илиSrvr="server1c";Ref="buh_test"для серверной. - Нажмите
Изменить— в мастере видны путь к каталогу или имя сервера и базы.
💡 Если у двух строк в списке одинаковые пути, это не копия, а два ярлыка на одну базу. Удаляйте только строку, файлы не трогайте.
Как убрать базу из списка в окне запуска 1С
Это безопасная операция: данные не затрагиваются, меняется только список.
- Запустите 1С:Предприятие обычным ярлыком.
- В списке информационных баз выделите копию.
- Нажмите кнопку
Удалитьсправа. - Подтвердите вопрос «Удалить информационную базу из списка?».
Строка исчезнет у текущего пользователя Windows. Другие пользователи этого же компьютера свою строку увидят, пока не удалят её сами.
Где хранится список баз
Список запуска — обычный текстовый файл:
%APPDATA%\1C\1CEStart\ibases.v8i
Каждая база в нём — отдельный блок, который начинается с имени в квадратных скобках:
[Бухгалтерия (копия от 12.09)]
Connect=File="D:\1C\Buh_copy";
ID=...
Если окно запуска не открывается или в списке десятки устаревших копий, закройте 1С, откройте ibases.v8i в Блокноте и удалите лишние блоки целиком — от строки в квадратных скобках до следующей такой строки. Перед правкой сохраните копию файла рядом.
Почему удалённая база снова появляется
Если копия возвращается после перезапуска, она приходит не из личного списка, а из общего. Администратор мог подключить общий список через файл 1CEStart.cfg параметром CommonInfoBases= — это путь к .v8i в сетевой папке.
- 📁 Общий список правит тот, кто им управляет, обычно системный администратор.
- 🔁 Удаление строки на рабочем месте не помогает: при старте список снова подтянется.
- 🧩 В этом случае попросите убрать копию из общего файла
.v8iна сервере.
Файл 1CEStart.cfg лежит в %APPDATA%\1C\1CEStart\ (настройки пользователя) и в %ALLUSERSPROFILE%\1C\1CEStart\ (для всех пользователей компьютера).
Полное удаление копии с диска
Когда копия больше не нужна, её стоит удалить физически. Порядок важен: сначала строка в списке, потом файлы. Иначе в окне запуска останется «мёртвая» база, которая при попытке открытия выдаст ошибку о том, что файл не найден.
Файловая копия
- Убедитесь, что копию никто не открыл. Если файл занят, Windows не даст удалить
1Cv8.1CD. - Удалите базу из списка запуска, как описано выше.
- Откройте каталог из строки подключения, например
D:\1C\Buh_copy. - Проверьте содержимое: там должны быть
1Cv8.1CD, папка1Cv8Logи, возможно,1Cv8FTxt(полнотекстовый поиск). - Удалите каталог целиком.
Перед удалением сверьте путь ещё раз. Каталоги рабочей базы и копии часто называются почти одинаково: Buh и Buh1, Buh_2024 и Buh_new. Если сомневаетесь, сначала переименуйте каталог и поработайте день — если ничего не сломалось, удаляйте.
Кеш копии на компьютере пользователя
Даже после удаления базы на диске пользователя остаются служебные папки с её кешем. По одной папке на каждую базу, имя — уникальный идентификатор:
%APPDATA%\1C\1cv8\
%LOCALAPPDATA%\1C\1cv8\
Они не мешают работе, но со временем набирают сотни мегабайт. Определить, какая папка к какой базе относится, по имени нельзя — идентификатор указан в ibases.v8i в строке ID=. Когда копия уже удалена из списка, её папку можно найти по этому ID в сохранённой копии ibases.v8i или просто очистить кеш у всех баз при закрытой 1С: программа восстановит его при следующем запуске, первый вход будет медленнее.
Клиент-серверная копия
Здесь база существует в двух местах: в кластере серверов 1С и на SQL-сервере. Удаляется в консоли администрирования серверов 1С:
- Откройте консоль, разверните
Кластеры → <кластер> → Информационные базы. - Найдите копию и проверьте её сеансы в ветке
Сеансы: если там есть работающие пользователи, удаление оборвёт их работу. - Вызовите команду
Удалитьв контекстном меню базы. - Выберите, что делать с базой данных на SQL-сервере.
| Вариант при удалении | Что происходит |
|---|---|
| Не изменять базу данных | Удаляется только регистрация в кластере, таблицы на SQL остаются |
| Очистить базу данных | Таблицы 1С удаляются, сама пустая база на SQL остаётся |
| Удалить базу данных | Удаляется и регистрация, и база данных на SQL-сервере |
Для удаления базы данных с SQL у пользователя, под которым кластер подключается к СУБД, должны быть соответствующие права. Если их нет, выберите «Не изменять базу данных» и попросите администратора СУБД удалить её вручную. В MS SQL это делается через Management Studio или запросом:
-- Проверьте имя базы! Команда необратима
DROP DATABASE [buh_test];
Если в базе остались подключения, SQL Server откажется её удалять. Не завершайте чужие сеансы без предупреждения: сначала убедитесь, что в консоли кластера у копии нет активных сеансов.
Признак «это копия»: как отключить блокировку внешних ресурсов
В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11 и другие) есть защита от двойной работы. Если программа видит, что база открыта по другому пути или на другом компьютере, чем раньше, она блокирует работу с внешними ресурсами и спрашивает администратора, что произошло.
В окне два варианта:
- ✅ Информационная база перемещена — база та же, просто переехала на новый сервер или в другой каталог. Блокировка снимается, всё работает как раньше.
- 🧪 Это копия информационной базы — блокировка остаётся. Обмены, загрузка курсов, обращения к ЭДО, отправка почты и регламентные задания с внешними сервисами в копии не запускаются.
Это сделано правильно: тестовая копия не должна отправлять отчётность, подтягивать документы ЭДО и выгружать данные в обмены за рабочую базу.
Когда признак копии нужно снять
- 🚚 Вы перенесли рабочую базу на новый сервер, а при первом входе по ошибке выбрали «Это копия».
- 🔁 Копия становится основной базой: рабочую вы выводите из эксплуатации.
- 🖥️ Администратор восстановил базу из бэкапа после сбоя, и это по-прежнему рабочая база.
Как разблокировать
- Войдите в базу пользователем с полными правами.
- Откройте
Администрирование → Обслуживаниеи перейдите к регламентным и фоновым заданиям. Пока блокировка действует, над списком заданий видно сообщение о том, что работа с внешними ресурсами заблокирована, со ссылкой на снятие блокировки. - Перейдите по ссылке и подтвердите, что база перемещена, а не скопирована.
Не снимайте блокировку у настоящей копии, пока рабочая база тоже работает. Две базы начнут параллельно отправлять отчётность, загружать входящие документы ЭДО и получать данные из обменов. Расхождения потом разбирать дольше, чем делать копию заново.
Как отключить копию, не удаляя её
Бывает, что копию нужно сохранить на время сверки или аудита, но работать в ней никому нельзя.
Файловая база
Самый простой способ — убрать её из списков у пользователей и переместить каталог туда, куда у них нет доступа. Права на папку настраивает администратор Windows.
Изнутри программы можно установить блокировку сеансов: Администрирование → Обслуживание → Блокировка работы пользователей. Там задаётся время начала и окончания, сообщение для пользователей и код разрешения, по которому администратор сможет войти.
Серверная база
В консоли кластера откройте свойства базы:
- 🔒 Блокировка начала сеансов включена — новые пользователи не смогут подключиться, можно указать сообщение и период.
- ⏸️ Блокировка регламентных заданий включена — фоновые задания в копии перестанут выполняться.
Вторую галочку стоит ставить у любой тестовой копии сразу после развёртывания, даже если признак копии в программе уже выбран. Это защищает от регламентных заданий, которые не обращаются к внешним сервисам, но нагружают сервер.
Тонкий клиент и веб-клиент: очистка списка баз
Тонкий клиент
Тонкий клиент пользуется тем же окном запуска и тем же файлом ibases.v8i, что и толстый. Копия удаляется так же: выделить строку и нажать Удалить.
Если тонкий клиент подключается к базе через веб-сервер, строка подключения выглядит как ws="https://server/buh_copy". Удаление строки убирает её из списка, но публикация на веб-сервере продолжает работать — по ссылке в базу по-прежнему можно войти.
Веб-клиент
У веб-клиента нет собственного списка баз: пользователь открывает адрес публикации в браузере. Чтобы копия стала недоступна, нужно снять её публикацию:
- Откройте копию в Конфигураторе от имени администратора Windows.
- Выберите
Администрирование → Публикация на веб-сервере. - Нажмите
Отключить.
После этого уберите адрес из закладок браузера у пользователей — иначе они увидят ошибку и будут писать в поддержку. Если публикация сделана на Apache вручную, её убирают из конфигурационного файла веб-сервера, а затем перезапускают службу Apache. При перезапуске прервутся сеансы всех опубликованных на этом сервере баз, поэтому делайте его вне рабочего времени.
Автоматическое удаление старых копий скриптом
Копии чаще всего копятся не в списке, а в папке резервного копирования: ежедневные выгрузки .dt и архивы каталогов файловых баз. За полгода это десятки гигабайт.
Скрипт PowerShell
Удаляет выгрузки старше 30 дней:
$path = "D:\Backup1C"
$days = 30
Get-ChildItem -Path $path -Include *.dt, *.zip -Recurse |
Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-$days) } |
Remove-Item -Force
Перед первым запуском замените Remove-Item -Force на Remove-Item -WhatIf — PowerShell покажет, какие файлы удалил бы, но ничего не тронет.
Командный файл bat
Тот же результат без PowerShell, через стандартную утилиту forfiles:
@echo off
forfiles /p "D:\Backup1C" /s /m *.dt /d -30 /c "cmd /c del /q @path"
Параметр /d -30 отбирает файлы, изменённые 30 и более дней назад. Для архивов повторите строку с /m *.zip.
Как запускать по расписанию
- Сохраните скрипт, например, как
D:\Scripts\clean_1c_backups.ps1. - Откройте Планировщик заданий Windows и создайте задачу.
- Действие — запуск программы
powershell.exeс аргументами-ExecutionPolicy Bypass -File "D:\Scripts\clean_1c_backups.ps1". - Расписание — раз в неделю, после основного резервного копирования.
💡 Не удаляйте всё подряд по возрасту. Практичная схема: последние 7–14 ежедневных копий плюс одна копия на конец каждого месяца, которая лежит в отдельной папке и в скрипт не попадает. Месячные копии выручают, когда ошибку в учёте нашли через квартал.
Частые вопросы
Если удалить базу из списка, данные пропадут?
Добавить с выбором существующей информационной базы и указанием её каталога.Можно ли удалить копию, если в ней кто-то работает?
1Cv8.1CD. Серверную формально можно, но пользователи потеряют несохранённые данные. Сначала завершите их работу по договорённости.Влияет ли удаление копии на лицензии?
Нужно ли удалять копию из сервиса 1С:Отчётность или ЭДО?
Как переименовать копию, чтобы не путать с рабочей базой?
Изменить и задайте понятное имя, например «Бухгалтерия — ТЕСТ, не работать». Имя меняется только в списке, путь к базе остаётся прежним.