MSSQLSERVER_17053

Область применения:SQL Server

Сведения

Атрибут Значение
Название продукта SQL Server
ИД события 17053
Источник событий MSSQLSERVER
Компонент SQLEngine
Символическое имя OS_ERROR
Текст сообщения %ls: Ошибка операционной системы %ls.

Описание

Произошла общая системная ошибка. Сообщение об ошибке упаковывает более конкретную ошибку операционной системы (ОС), которая может использоваться для диагностики этого сбоя. Примеры включают операции чтения или записи в файлы данных или журналов, которые завершаются сбоем, операции чтения и записи реестра или другие непредвиденные сбои вызовов API Win32.
Эта ошибка часто отображается вместе с другими сообщениями об ошибках в журнале ошибок SQL Server. Ошибки операционной системы отображаются с числовым значением, за которым следует текстовое сообщение об ошибке.

Действие пользователя

Ниже приведены примеры того, как можно увидеть ошибку 17053 вместе с другими ошибками. Каждый пример содержит идеи о том, как подходить к конкретному сценарию.

Пример ошибки ОС 665

В этом случае базовая ошибка ОС 665 указывает, что ограничение файловой системы было установлено во время записи или чтения файлов.

Error: 17053, Severity: 16, State: 1.
K:\DATA\MyDB.MDF_MSSQL_DBCC11: Operating system error 665(The requested operation could not be completed due to a file system limitation) encountered.

The operating system returned error 665(The requested operation could not be completed due to a file system limitation) to SQL Server during a write at offset 0x00031397ce2000 in file 'K:\DATA\MyDB.MDF_MSSQL_DBCC11'.

Решение.

Если вы используете этот сценарий, выполните действия, описанные в этой статье, чтобы устранить ошибки ОС 665 и 1450 для файлов SQL Server.

Пример ошибки SQL Server 9001 и базовых ошибок ОС 1117 и 21

В этом случае базовая ошибка ОС 1117 указывает, что устройство диска имеет ошибку или физически повреждено.

Error: 17053, Severity: 16, State: 1.
SQLServerLogMgr::LogWriter: Operating system error 1117(The request could not be performed because of an I/O device error.) encountered.

Write error during log flush.

Error: 9001, Severity: 21, State: 5.
The log for database 'SQLContoso' is not available. Check the operating system error log for related error messages. Resolve any errors and restart the database.

В этом случае базовая ошибка ОС — 21, указывающая, что устройство диска находится в автономном режиме и недоступно для используемой ОС и SQL Server.

Error: 17053, Severity: 16, State: 1.
SQLServerLogMgr::LogWriter: Operating system error 21(The device is not ready.) encountered.
Write error during log flush.

Error: 9001, Severity: 21, State: 4.
The log for database 'ContosoDB' is not available. Check the operating system error log for related error messages. Resolve any errors and restart the database.

Решение.

Если вы столкнулись с аналогичным сценарием, обратитесь к базовой ошибке ОС. В этом случае обратитесь к системным администраторам и поставщику оборудования, чтобы убедиться, что устройство на диске работает в сети, работает правильно и не сообщается об ошибках и повреждениях. В таких случаях может потребоваться проверить физическую целостность баз данных после восстановления дискового устройства, выполнив DBCC CHECKDB. Если сообщается о повреждении базы данных, восстановите последнюю известную резервную копию базы данных.

Пример ошибки SQL Server 9001 и базовых ошибок ОС 170

В этом случае базовая ошибка ОС 170 указывает, что файлы на диске используются или блокируются некоторыми другими программами, чаще всего драйвером фильтра файловой системы.

Error: 17053, Severity: 16, State: 1.
SQLServerLogMgr::LogWriter: Operating system error 170(The requested resource is in use.) encountered.

Write error during log flush.

Error: 9001, Severity: 21, State: 5.
The log for database 'SQLContoso' is not available. Check the operating system error log for related error messages. Resolve any errors and restart the database.

Решение.

Если вы столкнулись с аналогичным сценарием, обратитесь к базовой ошибке ОС. В этом случае обратитесь к системным администраторам, чтобы убедиться, что файлы базы данных и журналов не заблокированы другими программами. Чаще всего антивирусная программа или программное обеспечение защиты узлов, программное обеспечение дефрагментации или программное обеспечение резервного копирования, которое хранит блокировки файлов в течение длительного времени, может вызвать эту ошибку ОС. Не забудьте исключить файлы базы данных из сканирования или использования; Узнайте , как выбрать антивирусное программное обеспечение для запуска на компьютерах под управлением SQL Server.

В средах WSFC (кластеризованные), если диски не настроены должным образом на серверной части, они могут заблокировать файлы базы данных, если они не должны. Дополнительные сведения о хранилище для WSFC см. в статье "Решение для отказоустойчивой кластеризации" и экземпляры отказоустойчивого кластера с SQL Server в Azure Виртуальные машины — хранилище

Пример ошибки SQL Server 9002 и базовой ошибки ОС 112

В этом случае базовая ошибка ОС 112 указывает, что том диска не имеет места.

Error: 17053, Severity: 16, State: 1.
L:\SQLLOG\Contoso.LDF: Operating system error 112(There is not enough space on the disk.) encountered.

Error: 9002, Severity: 17, State: 5.
The transaction log for database 'ContosoDb' is full due to 'DATABASE_MIRRORING'.

Error: 5149, Severity: 16, State: 3.
MODIFY FILE encountered operating system error 112(There is not enough space on the disk.) while attempting to expand the physical file 'L:\SQLLOG\Contoso.LDF'.

Решение.

Если вы столкнулись с аналогичным сценарием, обратитесь к базовой ошибке ОС 112. В таком случае работайте с системным администратором, чтобы освободить дисковое пространство на устройстве, а затем попробуйте обработать полный журнал транзакций. Подробные инструкции по устранению ошибки 9002 см. в разделе "Устранение неполадок с полным журналом транзакций" (ошибка SQL Server 9002).

Пример с ошибками 17053 и 5173

В этом случае ошибка ОС 112 сообщается при запуске, потому что файл базы данных (часто tempdb) настроен с начальным размером , превышающим свободное пространство на диске. SQL Server не может создать или увеличить файл, и экземпляр не запускается. Поскольку SQL Server не может запуститься, размер файла нельзя исправить через обычное соединение. Сначала нужно запустить SQL Server с минимальной конфигурацией.

2026-07-19 17:18:46.70 spid21s     Error: 17053, Severity: 16, State: 1.
2026-07-19 17:18:46.70 spid21s     D:\SQLTemp\Log\tempdb.ldf: Operating system error 112(There is not enough space on the disk.) encountered.

2026-07-19 17:18:46.72 spid21s     Error: 5173, Severity: 16, State: 1.
2026-07-19 17:18:46.72 spid21s     One or more files do not match the primary file of the database. If you are attempting to attach a database, retry the operation with the correct files. If this is an existing database, the file may be corrupted and should be restored from a backup.

2026-07-19 17:18:46.72 spid21s     Error: 1802, Severity: 16, State: 4.
2026-07-19 17:18:46.72 spid21s     CREATE DATABASE failed. Some file names listed could not be created. Check related errors.

Решение.

Если SQL Server не запускается и неоднократно вылетает из-за первоначального размера настроенного файла базы данных за пределы свободного пространства диска:

  1. Запустите сервис SQL Server с минимальной конфигурацией (-fпараметр запуска). Это запускает SQL Server с минимальным tempdb уровнем и позволяет подключаться через выделенное администраторское соединение (DAC).

  2. Проверьте настроенный начальный размер файлов пользовательской базы данных:

    SELECT
        DB_NAME(database_id) AS DatabaseName,
        name AS LogicalFileName,
        type_desc AS FileType,       -- ROWS = Data file, LOG = Log file
        size * 8 / 1024 AS SizeMB    -- Initial size in MB
    FROM sys.master_files
    WHERE database_id > 4            -- Exclude system databases
    ORDER BY DatabaseName, FileType;
    
  3. Для любого файла, начальный размер которого больше доступного дискового пространства, уменьшите его до значения, которое соответствует:

    ALTER DATABASE YourDatabaseName
    MODIFY FILE
    (
        NAME = YourDataFileLogicalName,
        SIZE = 512MB                 -- new initial size
    );
    
  4. Закройте соединение DAC и перезапустите сервис SQL Server обычно из диспетчер конфигурации SQL Server или консоли сервисов.

Для , действует тот же принцип: уменьшить tempdbустановленный начальный размер tempdb данных или файлов журналов, чтобы они подходили к диску, затем перезапустить SQL Server. Для получения дополнительной информации о размерах tempdbсм. Оптимизировать производительность tempdb в SQL Server.