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