Администрирование · 10 мин
Как урезать базу 1С: рабочие способы уменьшить размер
Практические способы уменьшить базу 1С: свёртка итогов, удаление помеченных объектов, очистка версий и журналов, сжатие файловой базы и базы SQL Server.
База 1С растёт постоянно: документы, движения по регистрам, версии объектов, история обменов и служебные журналы накапливаются годами. Когда размер файловой базы переваливает за несколько гигабайт, замедляются открытие программы, проведение документов, формирование отчётов и создание резервных копий. «Урезать базу» можно разными способами — от безопасного удаления мусора до радикальной свёртки периода, и выбор зависит от того, что именно занимает место.
Важно понимать: урезание базы — это почти всегда необратимая операция. Удалённые документы и срезанные итоги восстановить нельзя, поэтому перед любыми действиями делается полная резервная копия, а сама процедура сначала отрабатывается на копии базы. Ниже разобраны способы от самого мягкого к самому радикальному, с условиями их применения и типичными ошибками.
Сначала выясните, что занимает место
Бессмысленно сворачивать документы, если половину объёма занимают версии объектов или присоединённые файлы. Для файловой базы посмотрите размер файла 1Cv8.1CD в каталоге базы. Для клиент-серверной — размер данных и журнала транзакций в свойствах базы на SQL Server.
Внутри базы основные «пожиратели» места обычно такие: движения документов по регистрам, хранилище версий объектов (если включена версионность), история обменов данными, присоединённые файлы и картинки, журнал регистрации, незавершённые сеансы обмена и очереди сообщений. В типовых конфигурациях есть обработки анализа, а для нестандартных случаев используют отчёт по размеру таблиц (для SQL-базы — запрос к системным представлениям).
Поможет свёртка периода или удаление старых документов
Очистка истории версий через регламентное задание
Очистка истории и неотправленных сообщений
Перенос файлов в тома на диске
Сделайте резервную копию и проверьте её
Это не формальность, а единственный способ откатиться. Для файловой базы достаточно скопировать каталог с файлом 1Cv8.1CD при закрытых сеансах или сделать выгрузку в .dt через конфигуратор (Файл → Сохранить копию / Выгрузить информационную базу). Для клиент-серверной базы — полный бэкап средствами SQL Server.
Копию стоит проверить: разверните её в отдельный каталог или под отдельным именем и убедитесь, что база открывается и данные на месте. Все дальнейшие операции сначала прогоняются на этой копии — так вы оцените реальный выигрыш в размере и время выполнения, не рискуя рабочими данными.
Быстрая чистка без потери учётных данных
Первый этап — удаление того, что не влияет на учёт. Это безопасно и часто даёт заметный эффект, особенно если база давно не обслуживалась.
Удаление помеченных объектов. В режиме 1С:Предприятие откройте «Администрирование → Обслуживание → Удаление помеченных объектов». Программа покажет объекты с пометкой удаления и объекты, которые им мешают удалиться (ссылки). Монопольное удаление проходит быстрее и полнее, но требует отсутствия других пользователей.
Очистка версий объектов. Если включено версионирование (типовые БСП-конфигурации), история версий может занимать значительную часть базы. В разделе настроек версионирования есть очистка устаревших версий — настройте регламентное задание на регулярное выполнение.
История обменов и очереди сообщений. Узлы обменов, давно не используемые, и накопленные сообщения обмена удаляются через настройки синхронизации. Также проверьте регистры результатов обмена данными — они чистятся штатными средствами.
Журнал регистрации. В конфигураторе: Администрирование → Журнал регистрации → Сократить. Укажите дату, до которой удалить события. Журнал редко занимает гигабайты, но на старых базах вклад бывает ощутимым.
- 1Сделать и проверить резервную копию
- 2Удалить помеченные объекты в монопольном режиме
- 3Очистить версии объектов и историю обменов
- 4Сократить журнал регистрации
- 5Выполнить тестирование и исправление со сжатием таблиц
- 6Сравнить размер базы до и после
Сжатие файловой базы: тестирование и исправление
Удаление данных в файловой базе само по себе не уменьшает файл 1Cv8.1CD — внутри остаются пустые области. Физическое уменьшение выполняется через конфигуратор: Администрирование → Тестирование и исправление, отметьте пункт «Сжатие таблиц информационной базы» (реструктуризацию и проверку ссылочной целостности выбирайте осознанно — они нужны для исправления ошибок, а не для размера).
Сжатие выполняется в монопольном режиме и на большой базе может занять часы. Запускайте его в нерабочее время. После завершения сравните размер файла: если база долго не обслуживалась, уменьшение может быть существенным. Альтернатива — выгрузка в .dt и загрузка в пустую базу: свежезагруженный файл часто компактнее, но этот путь дольше и требует больше свободного места на диске.
Свёртка базы: радикальное уменьшение периода
Свёртка — это удаление документов и движений до выбранной даты с формированием документов ввода остатков на начало нового периода. После свёртки старая история недоступна: отчёты за прошлые годы построить нельзя, документы не открыть. Зато размер базы сокращается многократно, а работа ускоряется.
В типовых конфигурациях (Бухгалтерия, Управление торговлей, ERP) есть штатная обработка свёртки: обычно в разделе «Администрирование → Обслуживание» или «НСИ и администрирование». Обработка формирует остатки по регистрам на дату свёртки, затем помечает и удаляет документы прошлых периодов. Процесс длительный и идёт в монопольном режиме.
Как подготовиться к свёртке
Выберите дату свёртки с запасом: обычно сворачивают на начало прошлого или позапрошлого года, чтобы закрытые периоды точно не понадобились для оперативной работы. Согласуйте дату с бухгалтерией — сданную отчётность и закрытые периоды трогать нельзя, если возможны камеральные запросы: старую базу придётся хранить архивом и открывать при необходимости.
Перед свёрткой закройте периоды, сведите взаиморасчёты, проведите инвентаризации остатков — чем чище данные на дату свёртки, тем корректнее остатки. После свёртки обязательно сверьте оборотно-сальдовую ведомость и ключевые отчёты в новой базе с архивной копией: остатки на дату свёртки должны совпасть.
Как выбрать действие
Особенности клиент-серверных баз на SQL Server
После удаления данных или свёртки файлы базы на SQL Server не уменьшаются автоматически — свободное место остаётся внутри файлов. Физическое сокращение выполняется операцией shrink для файлов данных. Делайте её разово, после масштабной чистки: регулярный shrink вреден, так как сильно фрагментирует индексы и ухудшает производительность.
Проверьте также модель восстановления базы. Если стоит Full, журнал транзакций может разрастись до огромных размеров без регулярных бэкапов журнала. Для баз 1С часто достаточно модели Simple — тогда журнал не растёт бесконтрольно. Смену модели и настройку плана обслуживания (реиндексация, обновление статистики) согласуйте с администратором СУБД.
-- Проверить размер данных и журнала (SQL Server)
EXEC sp_spaceused;
-- Сжать файлы после массового удаления данных (разово!)
DBCC SHRINKDATABASE (N'ИмяБазы', 10);Типичные ошибки и контроль результата
После всех операций проверьте результат по нескольким точкам. Размер файла базы должен уменьшиться (для файловой — после сжатия, для SQL — после shrink). Остатки на дату свёртки должны совпадать с архивной копией. Убедитесь, что открываются последние документы, работают обмены и регламентные задания, отчёты за текущий период строятся корректно.
Как проверить результат
Файл заметно уменьшился после сжатия/shrink
Размер не изменился — сжатие не выполнялось или данных удалено мало
ОСВ и ключевые отчёты совпадают с архивной копией
Расхождения в остатках — свёртку нужно переделывать из архива
Документы проводятся, обмены проходят без ошибок
Ошибки ссылочной целостности — выполнить ТиИ с проверкой ссылок
FAQ
Можно ли уменьшить базу 1С без свёртки?
Да. Удаление помеченных объектов, очистка версий объектов, истории обменов и журнала регистрации плюс сжатие таблиц часто дают заметный эффект без потери учётных данных. Свёртка нужна, когда основной объём — это сами документы и движения прошлых лет.
Почему после удаления документов файл базы не уменьшился?
Удалённые данные оставляют пустое место внутри файла. Для файловой базы выполните «Тестирование и исправление» с включённым сжатием таблиц, для базы на SQL Server — операцию shrink средствами СУБД.
Что будет со старой отчётностью после свёртки?
В свёрнутой базе отчёты за удалённые периоды построить нельзя. Поэтому архивную копию базы хранят отдельно и открывают при необходимости — например, для ответа на требование налоговой. Учитывайте сроки хранения документов, установленные законодательством.
Сколько времени занимает свёртка?
Зависит от размера базы и производительности сервера: от пары часов до суток на очень крупных базах. Сначала прогоните процедуру на копии — получите реальную оценку длительности и сможете спланировать окно простоя.
Нужно ли урезать базу регулярно?
Свёртку обычно делают раз в несколько лет. А вот чистку версий, истории обменов и журнала регистрации стоит автоматизировать регламентными заданиями — тогда база растёт медленнее и радикальные меры откладываются.
Что важно запомнить
Урезание базы 1С идёт от безопасного к радикальному: чистка служебных данных, сжатие таблиц, затем при необходимости свёртка периода. Каждый шаг — только после проверенной резервной копии, а результат контролируется по размеру файлов и сверке остатков с архивом.