Свертка информационной базы 1С: уменьшение размера таблиц и ускорение
- Размер базы данных 1С превышает физические лимиты оборудования или дисковых квот.
- Критическое замедление расчета итогов и закрытия месяца из-за глубины истории более 5-10 лет.
- Длительное создание резервных копий (dt / .bak) и увеличение окна обслуживания.
1. Этапы проведения свертки базы 1С
- Создание резервной копии: Полный бэкап базы средствами СУБД.
- Установка даты свертки: Определение границы (например, 31 декабря года N-3).
- Формирование остатков: Запуск типовой обработки «Свертка информационной базы» для создания документов «Ввод начальных остатков» на дату границы.
- Удаление устаревших движений: Очистка движений регистров до даты свертки.
- Пометка на удаление и непосредственное удаление: Удаление старых документов и неиспользуемой ссылочной информации.
2. Очистка таблиц итогов и пересчет в 1С
После удаления старых движений выполните в режиме «Конфигуратор» процедуру Тестирование и исправление:
- Реиндексация таблиц информационной базы;
- Пересчет итогов регистров накопления и бухгалтерии;
- Сжатие таблиц информационной базы.
3. Физическое обслуживание на стороне СУБД
Для освобождения места на файловой системе выполните разовое перестроение и сжатие файлов:
-- Для MS SQL Server: реорганизация и разовый Shrink после удаления миллионов строк
DBCC SHRINKDATABASE (N'ib_production', 10);
-- После Shrink ОБЯЗАТЕЛЬНО перестроить все индексы!
EXECUTE dbo.IndexOptimize @Databases = 'USER_DATABASES', @FragmentationHigh = 'INDEX_REBUILD_OFFLINE'; Частые вопросы (FAQ)
Обязательно ли удалять старые документы после формирования остатков?
Не обязательно. Можно очистить только движения регистров (проведение документов), оставив сами документы как исторические документы без влияния на таблицы остатков и оборотов.
Почему после свертки база в MS SQL Server не уменьшилась в размере на диске?
MS SQL Server не отдает освобожденное внутри файлов место операционной системе автоматически. Для возврата места требуется выполнить разовую команду DBCC SHRINKFILE.
Как свертка базы влияет на скорость проведения документов текущего периода?
Существенно ускоряет проведение, так как уменьшается размер таблиц итогов регистров, глубина поиска движений и размер рабочих индексов в оперативной памяти (Buffer Pool).
Что делать, если при удалении помеченных объектов возникают тайм-ауты блокировок?
Выполняйте удаление помеченных объектов регламентным заданием в монопольном режиме или небольшими порциями с отключенным контролем ссылочной целостности (для вспомогательных регистров).