Часто пользователи 1С сталкиваются с ситуацией, когда база данных «Бухгалтерия предприятия 3.0» начинает весить аномально много. Например, при минимальном количестве документов и справочников (около 20 000 товаров и 1000 контрагентов) объем файла 1Cv8.1CD может достигать 13 ГБ и более. В норме такая база должна занимать значительно меньше места. В этой статье мы подробно разберем, почему это происходит, как проанализировать состав таблиц и какие шаги предпринять для оптимизации дискового пространства.
Прежде чем что-то удалять, нам необходимо понять, какая именно часть базы занимает больше всего места. Файловая база 1С — это единый файл, но внутри он состоит из множества таблиц. Для анализа мы рекомендуем использовать специализированные внешние обработки, такие как «Пузомер» или Tool_1CD.
Рассмотрим, на что стоит обратить внимание при анализе таблиц. Если мы видим, что основную массу занимают таблицы с именами _InfoReg (регистры сведений) или _ConfigAndSharedInfo, значит, проблема кроется в системных данных или истории изменений. Если же база клиент-серверная (например, на PostgreSQL), мы можем выполнить прямой запрос к СУБД, чтобы получить точный размер каждой таблицы:
SELECT table_name,
pg_size_pretty(table_size) AS table_size,
pg_size_pretty(indexes_size) AS indexes_size,
pg_size_pretty(total_size) AS total_size
FROM (
SELECT table_name,
pg_table_size(table_name) AS table_size,
pg_indexes_size(table_name) AS indexes_size,
pg_total_relation_size(table_name) AS total_size
FROM (
SELECT ('"' || table_schema || '"."' || table_name || '"') AS table_name
FROM information_schema.tables
) AS all_tables
ORDER BY total_size DESC
) AS pretty_sizes
Этот запрос позволит нам мгновенно выявить «лидера» по потреблению места. В файловом варианте использование обработки даст аналогичный результат в наглядном виде. Для такой задачи подойдёт отчет для расчета размера таблиц базы данных по метаданным.
Одной из самых частых причин разрастания базы является Индекс полнотекстового поиска. Эта функция позволяет быстро находить данные по строкам, но цена этого удобства — огромные индексные файлы, которые могут занимать несколько гигабайт.
Разберем, как его отключить, если он не критичен для работы бухгалтерии:
Это действие часто позволяет освободить от 1 до 5 ГБ места практически мгновенно, так как система удалит временные файлы индексации.
Проанализируем настройку Истории изменений. В современных конфигурациях 1С по умолчанию может быть включено хранение истории изменений всех документов и справочников. Если внешняя обработка или пользователь массово перезаписывали номенклатуру (например, при переносе данных), система сохраняет копию каждой версии объекта. Для этой задачи можно использовать инструмент для удаления записей версий объектов.
Чтобы исправить ситуацию, выполним следующие действия:
Выясним, не загружен ли в базу полный адресный классификатор. В 1С:Бухгалтерии 3.0 данные ФИАС могут храниться непосредственно в базе данных. Если были загружены данные по всей России, база вырастет на 3-7 ГБ.
Рекомендация: переключитесь на использование веб-сервиса 1С для проверки адресов. Это позволит не хранить гигабайты адресных данных локально. Если данные уже загружены, их можно очистить через раздел «Поддержка и обслуживание» — «Адресный классификатор» — «Очистить адресные сведения».
Проанализируем, как хранятся сканы документов и электронные документы (ЭДО). По умолчанию файлы сохраняются прямо в теле базы данных (в таблице _Files). Если ваша компания активно обменивается актами и счетами-фактурами через ЭДО, каждый PDF-файл и XML-пакет увеличивают размер 1Cv8.1CD.
Рассмотрим вариант выноса файлов в Тома на диске:
Важно понимать специфику файловой СУБД 1С: когда вы удаляете данные (номенклатуру, версии или индексы), место в файле 1Cv8.1CD не освобождается автоматически. Оно просто помечается как свободное для будущих записей, но сам файл на диске не уменьшается. Чтобы физически уменьшить размер файла, необходимо выполнить «Сжатие».
Разберем по шагам процедуру обслуживания:
После завершения процедуры размер файла 1Cv8.1CD должен существенно уменьшиться, так как система пересоберет таблицы без «дыр» и пустот.
Если сжатие через ТиИ не дало желаемого результата, воспользуемся самым радикальным и эффективным методом — пересозданием базы через файл выгрузки .dt. Этот процесс полностью очищает базу от временных таблиц, неиспользуемых фрагментов и максимально оптимизирует структуру.
Выполним следующие действия:
.dt)..dt.Сравним размер старого файла и нового. Как правило, после такой процедуры база «худеет» на 20-40% даже без удаления полезных данных.
Заключение: Поддержание оптимального размера базы «1С:Бухгалтерия 8.3» требует комплексного подхода. Помните, что сама конфигурация (код и формы) занимает около 1.5–2 ГБ — это минимальный порог. Все, что выше, — это ваши данные, индексы и системный мусор, который нужно регулярно вычищать.