Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.

MSSQL Error 1105: Could not allocate space, filegroup is full — Решение

Обновлено: 25.08.2026  ·  Официальная база знаний

Ошибка 1105 возникает, когда ядро SQL Server не может выделить экстент свободного места для объекта (таблицы, индекса) в указанной файловой группе (обычно PRIMARY), так как все файлы группы исчерпали лимит размера или на диске отсутствует свободное место.

  • Сообщение: Could not allocate space for object '%.*ls' in database '%.*ls' because the '%.*ls' filegroup is full (Severity 17, State 1 to 2).
  • В 1С:Предприятие аварийно завершаются операции загрузки данных, проведение документов, обновление конфигурации и групповое перепроведение.
  • Дисковый раздел, где расположены файлы .MDF / .NDF, заполнен до 0 байт.
  • В свойствах файлов базы данных достигнуто ограничение MAXSIZE.

1. Проверка свободного места на дисках и ограничений файлов

SELECT 
    df.name AS FileName,
    df.physical_name,
    df.size * 8 / 1024 AS SizeMB,
    CASE WHEN df.max_size = -1 THEN 'UNLIMITED' 
         ELSE CAST(df.max_size * 8 / 1024 AS VARCHAR) END AS MaxSizeMB,
    df.growth,
    df.is_percent_growth,
    fg.name AS FilegroupName
FROM sys.database_files df
LEFT JOIN sys.filegroups fg ON df.data_space_id = fg.data_space_id;

2. Оперативное решение: Снятие лимита MAXSIZE и расширение файла

ALTER DATABASE [YourDatabaseName] 
MODIFY FILE (
    NAME = N'YourDatabaseName_Data',
    MAXSIZE = UNLIMITED,
    FILEGROWTH = 1024MB
);

3. Добавление дополнительного файла данных (NDF) на другой диск

Если на текущем диске физически закончилось место, добавьте вторичный файл данных на свободный диск без остановки работы пользователей:

ALTER DATABASE [YourDatabaseName]
ADD FILE (
    NAME = N'YourDatabaseName_Data_2',
    FILENAME = N'E:\MSSQL_Data\YourDatabaseName_Data_2.ndf',
    SIZE = 10240MB,
    FILEGROWTH = 1024MB,
    MAXSIZE = UNLIMITED
) TO FILEGROUP [PRIMARY];

4. Анализ самых больших таблиц 1С для очистки

SELECT TOP 10
    t.name AS TableName,
    s.name AS SchemaName,
    p.rows AS RowCounts,
    SUM(a.total_pages) * 8 / 1024 AS TotalSpaceMB,
    SUM(a.used_pages) * 8 / 1024 AS UsedSpaceMB
FROM sys.tables t
JOIN sys.indexes i ON t.object_id = i.object_id
JOIN sys.partitions p ON i.object_id = p.object_id AND i.index_id = p.index_id
JOIN sys.allocation_units a ON p.partition_id = a.container_id
LEFT JOIN sys.schemas s ON t.schema_id = s.schema_id
GROUP BY t.name, s.name, p.rows
ORDER BY TotalSpaceMB DESC;
Практический опыт инженера: Для таблиц журналов регистрации 1С (_SysLog, _EventLog) и таблиц версий объектов оперативно настройте регламентное усечение или перенесите их на отдельный диск с помощью секционирования.

Частые вопросы (FAQ)

Почему ошибка 1105 возникает, если на диске еще есть 50 ГБ свободного места?

В свойствах конкретного файла данных (.MDF/.NDF) было задано жесткое ограничение параметра MAXSIZE, либо текущий шаг прироста (например, FILEGROWTH = 60GB) превышает остаток свободного места на физическом диске.

Безопасно ли добавлять второй файл NDF в файловую группу PRIMARY базы 1С?

Да, абсолютно безопасно. SQL Server автоматически использует алгоритм Proportional Fill и начнет распределять новые записи параллельно между файлами MDF и NDF.

Как влияет переполнение tempdb на появление ошибки 1105?

Если файловая группа PRIMARY переполнилась в базе данных tempdb, любые сложные запросы 1С с сортировками, соединениями и временными таблицами упадут с ошибкой 1105.

Поможет ли сжатие базы данных (DBCC SHRINKDATABASE)?

DBCC SHRINKDATABASE крайне не рекомендуется на регулярной основе, так как вызывает катастрофическую фрагментацию индексов и генерацию огромного объема логов транзакций.