MSSQLSERVER_3023
適用於:SQL Server
詳細資料
屬性 | 值 |
---|---|
產品名稱 | SQL Server |
事件識別碼 | 3023 |
事件來源 | MSSQLSERVER |
元件 | SQLEngine |
符號名稱 | DB_IN_USE_DUMP |
訊息文字 | 資料庫上的備份和檔操作作業(例如 ALTER DATABASE ADD FILE)必須序列化。 完成目前的備份或檔操作作業之後,重新發出 語句 |
說明
您嘗試在 SQL Server 中執行備份、壓縮或改變資料庫命令,並遇到下列訊息:
訊息 3023,層級 16,狀態 2,第 1 行
資料庫上的備份和檔操作作業(例如 ALTER DATABASE ADD FILE)必須序列化。 請在目前的備份或檔案操作作業完成之後,重新發出陳述式。
Msg 3013, Level 16, State 1, Line 1
BACKUP DATABASE is terminating abnormally.
此外,SQL Server 錯誤記錄檔包含如下的訊息:
<Datetime > 備份錯誤:3041,嚴重性:16,狀態:1。
<Datetime > Backup BACKUP 無法完成 BACKUP DATABASE MyDatabase WITH DIFFERENTIAL 命令。 詳細訊息請檢查備份應用程式記錄檔。
您可能也會注意到,這些命令在從各種動態管理檢視檢視中檢視這些命令的狀態時遇到 wait_type = LCK_M_U
, wait_resource = DATABASE: <id> [BULKOP_BACKUP_DB]
例如 或 sys.dm_exec_requests
sys.dm_os_waiting_tasks
。
可能的原因
當完整資料庫目前正在針對資料庫進行時,有數個規則允許或不允許作業。 一些範例如下所示:
- 一次只能進行一個資料備份(當完整資料庫備份發生時,差異備份或增量備份無法同時發生)。
- 一次只能進行一個記錄備份(發生完整資料庫備份時允許記錄備份)。
- 發生備份時,您無法將檔案加入或卸載至資料庫。
- 資料庫備份發生時,您無法壓縮檔案。
- 備份發生時允許有有限的復原模式變更。
執行上述任何衝突的作業時,命令將會遇到「說明」一節中提及的鎖定等候,後面接著您收到 3023 和 3041 訊息。
使用者動作
檢查各種資料庫維護活動的排程,然後調整排程,讓這些作業或命令不會彼此衝突。
其他相關資訊
SQL Server 會在資料庫中記錄備份 msdb
的開始時間和結束時間。 您可以檢查備份歷程記錄,以判斷嘗試增量備份時是否發生完整資料庫備份,因而造成錯誤。 您可以使用下列查詢來協助您完成此程式:
select database_name, type, backup_start_date, backup_finish_date
from msdb.dbo.backupset
order by database_name, type, backup_start_date, backup_finish_date
go
您也可以使用 SQL Profiler 追蹤中的使用者錯誤訊息 事件,或 擴充事件中的 error_reported 事件,來追蹤 3023 訊息回報給起始備份或其他維護命令的應用程式。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應