次の方法で共有


MSSQLSERVER_17053

適用対象:SQL Server

詳細

属性
製品名 SQL Server
イベント ID 17053
イベント ソース MSSQLSERVER
コンポーネント SQLEngine
シンボル名 OS_ERROR
メッセージ テキスト %ls:オペレーティング システム エラー %ls が発生しました。

説明

一般的なオペレーティング システム エラーが発生しました。 エラー メッセージは、より具体的なオペレーティング システム (OS) エラーをラップします。このエラーは、そのエラーの診断に役立ちます。 たとえば、失敗したデータ ファイルまたはログ ファイルへの読み取りまたは書き込み、レジストリの読み取り/書き込み操作、またはその他の予期しない Win32 API 呼び出しエラーなどがあります。
このエラーは、SQL Serverエラー ログの他のエラー メッセージと共に頻繁に表示されます。 オペレーティング システム エラーは数値で表示され、その後にエラーのテキスト メッセージが表示されます。

ユーザーの操作

17053 エラーを他のエラーと共に表示する方法の例を次に示します。 各例では、特定のシナリオにアプローチする方法に関するアイデアを提供します。

OS エラー 665 の例

この場合、基になる OS エラー 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'.

解決策:

このシナリオが発生した場合は、この記事の手順に従って、OS エラー 665 と 1450 がSQL Server ファイルに対して報告されます

SQL Server エラー 9001 と基になる OS エラー 1117 および 21 の例

この場合、基になる OS エラー 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.

この場合、基になる OS エラーは 21 です。これは、ディスク デバイスがオフラインであり、OS と 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.

解決策:

同様のシナリオが発生した場合は、基になる OS エラーに対処します。 この場合は、システム管理者とハードウェア ベンダーと協力して、ディスク デバイスがオンラインで、正しく機能し、エラーや損傷が報告されていないことを確認してください。 このような場合は、DBCC CHECKDB を実行してディスク デバイスを復元したら、データベースの物理的な整合性をチェックする必要があります。 データベースの損傷が報告された場合は、最新の正常なデータベース バックアップを復元します。

SQL Server エラー 9001 と基になる OS エラー 170 の例

この場合、基になる OS エラー 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.

解決策:

同様のシナリオが発生した場合は、基になる OS エラーに対処します。 この場合は、システム管理者と協力して、データベースとログ ファイルが他のプログラムによってロックされていないことを確認します。 最も一般的に、ウイルス対策またはホスト保護ソフトウェア、最適化ソフトウェア、またはファイルのロックを長時間保持するバックアップ ソフトウェアは、この OS エラーを引き起こす可能性があります。 データベース ファイルがスキャンまたは使用されないように必ず除外してください。SQL Serverを実行しているコンピューターで実行するウイルス対策ソフトウェアを選択する方法に関するページを参照してください。

WSFC (クラスター化) 環境では、ドライブがバックエンドで適切に構成されていない場合、データベース ファイルがロックされる可能性があります。 WSFC のストレージの詳細については、「フェールオーバー クラスタリング ハードウェア ソリューション」および「Azure Virtual Machines でのSQL Serverを使用したフェールオーバー クラスター インスタンス - ストレージ」を参照してください。

SQL Server エラー 9002 と基になる OS エラー 112 の例

この場合、基になる OS エラー 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'.

解決策:

同様のシナリオが発生した場合は、基になる OS 112 エラーに対処します。 この場合は、システム管理者と協力してデバイスのディスク領域を解放し、完全なトランザクション ログへの対処を試みます。 エラー 9002 のトラブルシューティングの詳細な手順については、「完全なトランザクション ログのトラブルシューティング (SQL Server エラー 9002)」を参照してください。