Как исправить ошибку «Превышен максимальный размер внутреннего файла» в 1С:Бухгалтерия?

Системный администратор 1С v8.3 (Управляемые формы) 1C:Бухгалтерия IT и автоматизация бизнеса
← На главную

В файловом варианте работы базы данных 1С:Предприятие (файл .1CD) действует ограничение на максимальный размер одной таблицы или её индексов в 4 ГБ. При активном использовании электронного документооборота, отправке писем с вложенными файлами или хранении сканов документов внутри базы быстрее всего заполняется таблица РегистрСведенийДвоичныеДанныеФайлов. При достижении порога в 4 ГБ система блокирует дальнейшую запись данных и выдает сообщение: «Превышен максимальный размер внутреннего файла».

Разберем по шагам, как решить эту проблему без срочного и дорогостоящего перехода на клиент-серверный вариант (SQL).

Настройка хранения файлов во внешних томах через UNC-путь

Самый надежный и штатный способ предотвратить разрастание базы данных — вынести хранение двоичных данных писем и файлов за пределы файла .1CD на жесткий диск или сетевой ресурс.

Рассмотрим порядок действий для подключения внешнего тома хранения:

  1. Перейдем в раздел администрирования: Администрирование — Настройки программы — Настройка работы с файлами.
  2. Установим флаг Хранить файлы в томах на диске.
  3. Перейдем по ссылке Тома хранения файлов и создадим новый элемент справочника.
  4. Укажем наименование тома, лимит объема и путь к папке.

Важная особенность настройки пути к папке: 1С не принимает обычные локальные пути вида D:\1c\share\, если доступ к базе осуществляется по сети или через сервер. Путь должен быть указан строго в сетевом UNC-формате: \\ИмяКомпьютера\ИмяРесурса.

Проанализируем примеры правильной записи UNC-пути:

  1. Если создана общая сетевая папка: \\ServerName\1c_share\
  2. Если используется административный доступ к локальному диску компьютера (при наличии админских прав): \\YourPC\D$\1c\share\

Обратите внимание: учетная запись Windows, от имени которой работает служба 1С или веб-сервер (при публикации базы), должна иметь полные права на чтение и запись в указанную сетевую директорию.

Перенос накопившихся файлов и сжатие таблиц базы

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

Чтобы физически уменьшить размер базы и освободить место в таблице РегистрСведенийДвоичныеДанныеФайлов, выполним следующие операции:

  1. В справочнике Тома хранения файлов воспользуемся штатной процедурой переноса ранее сохраненных файлов из базы во внешние тома.
  2. Выполним очистку ненужных файлов и версий через механизм Настройка очистки файлов (например, настроим регулярное фоновое удаление устаревших вложений писем).
  3. Запустим режим конфигуратора и откроем пункт меню Администрирование — Тестирование и исправление...
  4. Выберем пункт Сжатие таблиц информационной базы и нажмем Выполнить. Именно эта процедура пересобирает файлы таблиц и реально уменьшает объем файла базы на диске.

Увеличение лимита размера внутренней таблицы через cnvdbfl.exe

Если требуется оперативно расширить допустимый размер внутреннего файла без выноса данных во внешние тома, воспользуемся утилитой конвертации файловой базы cnvdbfl.exe, которая поставляется вместе с платформой 1С:Предприятие (находится в каталоге bin установленной платформы).

Начиная с версии платформы 8.3.8, поддерживается увеличение размера внутренней страницы файла .1CD со стандартных 4 КБ до 8, 16, 32 или 64 КБ. Это позволяет поднять предел размера одной таблицы с 4 ГБ до 6 ГБ и выше.

Рассмотрим пример команды для конвертации базы с увеличением размера страницы до 64 КБ (перед выполнением обязательно создайте резервную копию базы данных):

cnvdbfl.exe -c -f 8.3.8 -p 64k "C:\Bases\1C_Бухгалтерия\1Cv8.1CD"

Нюанс работы утилиты: помните, что при выгрузке базы данных в файл DT (.dt) и ее последующей загрузке в новую файловую базу размер страницы автоматически сбрасывается к стандартным 4 КБ. В таком случае процедуру изменения размера страницы через cnvdbfl.exe потребуется повторить.

← На главную