MSSQLSERVER_3013
適用於:SQL Server
詳細資料
屬性 | 值 |
---|---|
產品名稱 | SQL Server |
事件識別碼 | 3013 |
事件來源 | MSSQLSERVER |
元件 | SQLEngine |
符號名稱 | DMP_ABORT |
訊息文字 | BACKUP DATABASE 正在異常終止 /RESTORE DATABASE 正在異常終止。 |
說明
此錯誤是備份或還原作業意外中斷時所發生的一般錯誤。 您會看到 3013 與其他錯誤訊息一起引發,以更具體地了解備份失敗的原因。 範例包括從備份媒體讀取或寫入失敗或其他非預期的 Win32 API 呼叫失敗。
原因
SQL Server 中備份或還原異常終止的原因有很多種。 以下是常見原因的清單:
- 磁碟空間不足
- 備份記憶體裝置的路徑不正確
- 另一個程式已經開啟備份檔/裝置
- 備份媒體裝置失敗或故障
- 資料庫損毀 - 如果資料庫損毀,備份或還原作業可能會失敗。
- 缺少BACKUP DATABASE、BACKUPLOG或 CREATE DATABASE 許可權,以便分別備份或還原
- SQL Server 服務帳戶無法存取備份裝置
使用者動作
檢查 SQL 錯誤記錄檔中是否有其他與此錯誤同時發生的訊息,以取得其他資訊和疑難解答。
針對磁碟空間不足,請確定您正在寫入備份的磁碟驅動器有足夠的可用空間,或使用不同的裝置。 請參閱 錯誤 3203 和 3203 的範例
針對不正確的檔案路徑,請仔細檢查並更正BACKUP或 RESTORE 命令中指定的路徑和檔名。
針對備份媒體失敗,如果您要備份到磁帶機或其他備份裝置,請確定裝置正常運作,且未發生任何硬體錯誤。 請參閱 錯誤 3203 和 3203 的範例和 錯誤 3241 的範例
針對資料庫損毀問題,您可能會在 SQL Server 中觀察到其他錯誤。 執行 DBCC CHECKDB 來識別資料庫中的任何錯誤並加以解決。 如需詳細資訊,請參閱 針對 DBCC CHECKDB 報告的資料庫一致性錯誤進行疑難解答
如果您的伺服器主體帳戶缺少執行備份或還原作業的許可權,請確定已授與這些許可權的帳戶。 請參閱 備份許可權 和 還原許可權
針對 SQL Server 服務帳戶許可權問題,請確定 SQL Server 服務帳戶具有備份裝置的讀取和寫入許可權,或寫入備份檔所在的文件系統。 請參閱 備份許可權。
以下是常見觀察到錯誤與 3013 的範例。
錯誤 3241 的範例
在此案例中,錯誤 3241 會引發 3013,並指出備份本身的問題。
Msg 3241, Level 16, State 0, Line 2
The media family on device 'G:\backup\ProdDB_backup.bak' is incorrectly formed. SQL Server cannot process this media family.
Msg 3013, Level 16, State 1, Line 2
RESTORE FILELIST is terminating abnormally.
解決方法:
此錯誤通常表示備份損毀或儲存或傳輸備份的媒體故障。 尋找替代備份,以從不同的媒體還原,或嘗試先前或更新版本的備份。 此外,請參閱針對 TDE 資料庫的備份/還原KB5014298 - FIX:執行 RESTORE DATABASE 或 RESTORE LOG 時發生錯誤 3241
如需更多疑難解答想法,請參閱 從備份還原資料庫時與媒體相關的錯誤
錯誤 3203 和 3203 的範例
發生 I/O 相關問題時,錯誤 3202 和 3203 會引發備份錯誤。 這兩個錯誤指出是否已執行讀取或寫入要求,並顯示I/O 失敗所造成的基礎OS錯誤。 已觀察到這些範例:
Msg 3203, Level 16, State 1, Line 1
Read on "G:\SQLDATA\ProductionDb.ndf" failed: 483(The request failed due to a fatal device hardware error.)
Msg 3013, Level 16, State 1, Line 1
BACKUP DATABASE is terminating abnormally.
Msg 3202, Level 16, State 1, Line 2
Write on "Y:\SQLDATA\ProductionDb.bak" failed: 1117(The request could not be performed because of an I/O device error.)
Msg 3013, Level 16, State 1, Line 2
RESTORE DATABASE is terminating abnormally.
Msg 3202, Level 16, State 1, Line 14
Write on "\\BackupServer\Share\ProdDb.bak" failed: 112(There is not enough space on the disk.)
Msg 3013, Level 16, State 1, Line 14
BACKUP DATABASE is terminating abnormally.
解決方法:
OS 483 和 1117 的範例表示 I/O 裝置失敗。 檢查儲存媒體故障或損壞。 檢閱系統事件記錄、硬體設定和記錄,並與硬體系統管理員和廠商合作,以解決儲存備份的媒體任何問題。 以下是您可能會在系統事件記錄檔中找到的訊息範例,指出需要解決的 I/O 問題:
Warning PM,Disk,153,None,The IO operation at logical block address 0xe90525a0 for Disk 3 (PDO name: \Device\00000017) was retried.
如果引發 OS 錯誤 112 指出空間問題,請確定傳送備份的本機或遠端記憶體上有足夠的磁碟空間。 如果有足夠的空間可用,請確定儲存媒體的可靠性。
3624 的範例
在某些情況下,錯誤 3013 可能會與系統判斷提示一起引發。 如果備份失敗並出現判斷提示,則主要焦點是處理判斷提示本身。 以下是觀察到的問題範例:
Msg 3013, Sev 16, State 1, Line 1
VERIFY DATABASE is terminating abnormally.
Msg 3624, Sev 20, State 1, Line 1
A system assertion check has failed. Check the SQL Server error log for details. Typically, an assertion failure is caused by a software bug or data corruption. To check for database corruption, consider running DBCC CHECKDB. If you agreed to send dumps to Microsoft during setup, a mini dump will be sent to Microsoft. An update might be available from Microsoft in the latest Service Pack or in a Hotfix from Technical Support.
Error: 17066, Severity: 16, State: 1.
SQL Server Assertion: File: mediaRead.cpp:429 Expression: !m_ActiveConsumptionList.IsEmpty () || !m_ActiveReads.IsEmpty () || !m_DecodeOutputQ.IsEmpty () || (CFeatureSwitchesMin::GetCurrentInstance ()->FEnableCheckingActiveDecodeQueueEnabled () && !m_ActiveDecodeInput.IsEmpty ()) SPID: 74 Process ID: 25440
解決方法:
檢閱 SQL Server 錯誤記錄檔,並使用本文 中所述的方法MSSQLSERVER_3624 來針對判斷提示失敗進行疑難解答:
在您的資料庫上執行 DBCC CHECKDB,並確定 I/O 路徑上的所有元件都正常運作。
在線查閱部分或所有判斷提示表達式是否有任何已知問題。 例如,如果您搜尋
m_ActiveConsumptionList.IsEmpty
,您可能會發現 KB4469554 - FIX:在 SQL Server 2014、2016 和 2017 中還原壓縮備份期間發生判斷提示錯誤。將您的 SQL Server 更新為稍後的組建(累積更新)
確定沒有任何外部元件干擾並導致失敗
錯誤 4303 的範例
此範例說明還原失敗並引發錯誤 3013 的事務歷史記錄順序。 特定錯誤 4303 表示在此錯誤之前遺失更多事務歷史記錄還原,或事務歷史記錄備份檔已損毀。 例如,LSN = 4294967295429496729565535似乎不是有效的 LSN,可能是備份檔或媒體損毀的結果。
Msg 4303, Level 16, State 1, Line 3
The roll forward start point is now at log sequence number (LSN) 8177105000003941300003. Additional roll forward past LSN 4294967295429496729565535 is required to complete the restore sequence.
Msg 3013, Level 16, State 1, Line 3
RESTORE DATABASE is terminating abnormally.
解決方法:
如果您遇到 4303 和 3013 之類的錯誤,請尋找替代良好的備份來還原。 也請檢查儲存媒體的穩定性,並視需要進行備份和修復。
另請參閱
- 針對 SQL Server 備份和還原作業進行疑難解答。