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

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

Как обрезать базу 1С 8.3 без потери данных

Пошаговая инструкция по обрезке базы 1С 8.3: свёртка итогов, пометка и удаление документов, тестирование и исправление, сжатие SQL-базы без потери данных.

Со временем любая база 1С 8.3 разрастается: накапливаются документы за прошлые годы, движения регистров, версии объектов и служебные данные. Результат — медленные отчёты, долгие обновления, громоздкие резервные копии и ошибки при выгрузке. Обрезка базы решает эту проблему: устаревшие периоды сворачиваются или удаляются, а актуальные данные остаются в рабочем состоянии.

Под «обрезкой» обычно понимают три разные операции: свёртку итогов на дату (остатки вместо документов), удаление помеченных объектов и физическое сжатие файлов базы на уровне СУБД или файловой системы. Часто их выполняют вместе, но это самостоятельные процедуры с разными рисками и результатами.

Главное правило: любая обрезка начинается с полной резервной копии и проверки на тестовой копии. Свёртка — операция необратимая в части переноса документов: вернуть удалённые документы можно только из архива. Поэтому ниже разобран порядок действий, который минимизирует риск потери данных.

Когда базу действительно нужно обрезать

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

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

РазмерБаза растёт на сотни мегабайт в месяц

Сравните размер резервных копий за несколько месяцев

СкоростьОтчёты и закрытие месяца замедлились в разы

Замерьте время выполнения типовых операций

ОбновленияОбновление конфигурации идёт часами

Большие таблицы регистров тормозят реструктуризацию

АрхивРезервные копии не помещаются в ночное окно

Проверьте длительность выгрузки dt или бэкапа СУБД

Подготовка: резервная копия и тестовая база

Первый шаг — полная резервная копия. Для файловой базы это выгрузка через конфигуратор («Администрирование» → «Выгрузить информационную базу») либо копирование файла 1Cv8.1CD при отсутствии активных сеансов. Для клиент-серверной базы — штатный бэкап средствами MS SQL Server или PostgreSQL. Храните копию на отдельном носителе, а не на том же диске.

Второй шаг — развёртывание копии в тестовой базе. На ней выполняется вся обрезка: вы увидите реальную длительность операций, проверите корректность остатков после свёртки и поймёте, какие подсистемы «сломаются». Только после успешной проверки на копии процедуру повторяют на рабочей базе, обычно в выходные или ночью.

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

Свёртка итогов на дату

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

В типовых конфигурациях (Бухгалтерия предприятия, Управление торговлей, ERP) есть штатная обработка свёртки: в БП 3.0 это «Администрирование» → «Обслуживание» → «Свертка информационной базы». Обработка проводит анализ, предлагает дату свёртки (обычно начало года, за который сдана отчётность) и формирует документы ввода остатков. Для самописных конфигураций используются типовые обработки свёртки с диска ИТС или разрабатываются собственные.

Выбор даты свёртки

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

Проверка после свёртки

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

Порядок свёртки типовой базы
  1. 1
    Сделайте резервную копию и разверните тестовую базу
  2. 2
    Завершите сеансы и заблокируйте вход пользователей
  3. 3
    Запустите обработку свёртки и укажите дату
  4. 4
    Дождитесь формирования документов ввода остатков
  5. 5
    Сверьте ОСВ и остатки до и после на дату свёртки
  6. 6
    Пометьте документы прошлых периодов на удаление
  7. 7
    Выполните удаление помеченных объектов
  8. 8
    Повторите процедуру на рабочей базе после успешной проверки

Удаление помеченных объектов и очистка служебных данных

После свёртки в базе остаются тысячи помеченных документов. Их удаляют штатно: «Администрирование» → «Обслуживание» → «Удаление помеченных объектов». Режим «Выборочное удаление» позволяет контролировать процесс, монопольный режим работает быстрее. Если удаление «зависает» на отдельных объектах из-за ссылочной целостности, смотрите список препятствующих ссылок и разбирайте их вручную.

Заметную часть объёма часто занимают не документы, а служебные данные: версии объектов (если включено версионирование), история обменов, журналы регистрации, результаты фоновых заданий, неактуальные данные сегментов. В типовых конфигурациях для этого есть регламентные очистки и обработки «Очистка версий объектов». Журнал регистрации сокращается через конфигуратор («Администрирование» → «Журнал регистрации» → «Сократить») с выгрузкой старой части в архив.

Физическое сжатие базы

После удаления данных внутри файлов базы остаются пустые страницы, и размер файлов на диске не меняется. Чтобы вернуть место, выполняют физическое сжатие — процедура зависит от варианта работы.

Файловая база

Для файловой базы используется «Тестирование и исправление» в конфигураторе с включённой опцией «Сжатие таблиц информационной базы». Операция пересоздаёт таблицы и индексы, убирая пустоты. Выполняется монопольно, на большой базе занимает часы. Альтернатива — выгрузка базы в dt и загрузка обратно: загруженная база изначально компактна.

Клиент-серверная база (MS SQL)

На SQL Server применяют DBCC SHRINKDATABASE или SHRINKFILE через SQL Server Management Studio, а также перестроение индексов (ALTER INDEX REBUILD), которое уплотняет данные. Важно понимать: постоянный shrink — плохая практика, он фрагментирует индексы. Его делают один раз после массового удаления, а далее поддерживают регламентным перестроением индексов.

Способы уменьшить базу

Свёртка итогов

Убирает историю документов, заменяя её остатками. Необратима, но даёт максимальный эффект по объёму и скорости

Удаление помеченных объектов

Очищает уже ненужные объекты. Безопасна, но не уменьшает файлы на диске без сжатия

Тестирование и исправление со сжатием

Уплотняет файловую базу. Долго на больших объёмах, требует монопольного доступа

Выгрузка/загрузка dt

Пересоздаёт базу компактной. Требует места под выгрузку и проверки целостности

SHRINK на SQL Server

Возвращает место на диске в клиент-серверном варианте. Фрагментирует индексы, после него нужен rebuild

Частые ошибки и ограничения

Самая распространённая ошибка — обрезка без тестового прогона. Свёртка на рабочей базе может оборваться по тайм-ауту, нехватке места на диске или из-за ошибок в данных, и база останется в промежуточном состоянии. Вторая типичная ошибка — свёртка при незакрытых периодах: потом выясняется, что нужна корректировка прошлого года, а документов уже нет.

Ещё одна ловушка — ожидание, что после удаления документов файл базы сам уменьшится. Этого не произойдёт ни в файловом, ни в клиент-серверном варианте без отдельной операции сжатия. И наоборот: сжатие без предварительной свёртки и удаления почти ничего не даст — пустот в базе мало.

Учитывайте ограничения: во время свёртки, удаления и сжатия база недоступна пользователям, а на диске должно быть свободное место — часто сопоставимое с размером самой базы (для выгрузки dt или перестроения таблиц).

Типичные ошибки при обрезке
01
Свёртка без резервной копии — при сбое данные прошлых периодов теряются безвозвратно
02
Ожидание уменьшения файла после удаления объектов — без сжатия размер на диске не изменится
03
Свёртка до сдачи отчётности за период — корректировки станут невозможны
04
Регулярный SHRINK на SQL Server — накапливается фрагментация индексов и падает скорость
05
Запуск обрезки при активных сеансах — блокировки, обрывы и повреждение данных

Проверка результата и регламент на будущее

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

Чтобы база не разрасталась снова, настройте регламент: периодическую очистку версий объектов и истории обменов, сокращение журнала регистрации, плановое удаление помеченных объектов и перестроение индексов на SQL Server. Свёртку учётных данных обычно планируют раз в год — после сдачи годовой отчётности.

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

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

Размер файлов базы
Норма

Заметно меньше исходного после сжатия

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

Размер не изменился — сжатие не выполнялось или не сработало

ОСВ и остатки на дату свёртки
Норма

Совпадают с отчётами до свёртки

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

Есть расхождения — остатки перенесены не полностью

Регламентные задания и обмены
Норма

Выполняются без ошибок

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

Ошибки в журнале регистрации, обрывы синхронизации

Скорость отчётов
Норма

Время формирования сократилось

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

Скорость прежняя — возможно, нужна реиндексация

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

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

Технически да, но это опасно: удаление документов без ввода остатков исказит итоги по регистрам и счетам — остатки «съедут». Если документы не участвуют в итогах (например, старые служебные файлы или черновики), их можно удалить напрямую. Для учётных документов правильный путь — свёртка.

Сколько времени занимает обрезка большой базы?

Зависит от объёма и оборудования: на базе в десятки гигабайт свёртка, удаление и сжатие вместе могут занять от нескольких часов до суток. Именно поэтому процедуру сначала прогоняют на копии — чтобы узнать реальную длительность и спланировать окно недоступности.

Нужно ли сжимать базу на SQL Server после каждого удаления?

Нет. SHRINK оправдан один раз после массового удаления данных. При регулярном использовании он фрагментирует индексы и ухудшает производительность. Для повседневного обслуживания используют перестроение и реорганизацию индексов, а не сжатие.

Что делать, если свёртка оборвалась на середине?

Не продолжайте работу в такой базе: часть остатков уже введена, часть документов помечена — состояние непредсказуемое. Восстановите базу из резервной копии, устраните причину сбоя (нехватка места, тайм-ауты, ошибки данных) и повторите процедуру сначала.

Можно ли обрезать только журнал регистрации?

Да, это независимая и безопасная операция: в конфигураторе откройте журнал регистрации и используйте функцию сокращения, предварительно выгрузив старую часть в файл, если история может понадобиться. На учётные данные это никак не влияет.

Итог

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

Обрезка базы 1С 8.3 — это последовательность: резервная копия, свёртка итогов на дату, удаление помеченных объектов и физическое сжатие. Каждый шаг сначала отрабатывается на тестовой копии, результат проверяется сверкой остатков. Без сжатия файлы базы не уменьшатся, а без копии свёртка необратима.