Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Details
| Attribute | Value |
|---|---|
| Název produktu | SQL Server |
| ID události | 3023 |
| Zdroj události | MSSQLSERVER |
| Součást | SQLEngine |
| Symbolický název | DB_IN_USE_DUMP |
| Text zprávy | Zálohování a manipulace se soubory (například ALTER DATABASE ADD FILE) v databázi musí být serializovány. Příkaz znovu vydat po dokončení aktuální zálohy nebo manipulace se souborem |
Vysvětlení
Snažíte se spustit příkaz Záloha, zmenšení nebo úprava databáze v SQL Server a narazíte na následující zprávy:
Msg 3023, úroveň 16, stav 2, linka 1
Zálohování a manipulace se soubory (například ALTER DATABASE ADD FILE) v databázi musí být serializovány. Po dokončení aktuální operace zálohování nebo operace se soubory zadejte příkaz znovu.
Msg 3013, úroveň 16, stav 1, řádek 1
BACKUP DATABASE abnormálně končí.
Navíc chybový log SQL Server obsahuje zprávy jako například:
<Chyba zálohy datového času> : 3041, závažnost: 16, stav: 1.
<Záloha BACKUP datového času> nedokázala dokončit příkaz BACKUPDATABASE MyDatabase S DIFERENCIÁLEM. Podrobné zprávy najdete v protokolu zálohované aplikace.
Můžete si také všimnout, že tyto příkazy se setkávají s a wait_type = LCK_M_Uwait_resource = DATABASE: <id> [BULKOP_BACKUP_DB] a při pohledu na stav těchto příkazů z různých dynamických manažerských pohledů (DMV), například z sys.dm_exec_requests nebo sys.dm_os_waiting_tasks.
Možné příčiny
Existuje několik pravidel, která určují, která operace jsou povolena nebo nepovolena, když je v současnosti probíhající celá databáze proti databázi. Některé příklady jsou následující:
- Může proběhnout pouze jedna záloha dat najednou (když dojde k úplné databázové zálohě, nelze současně provádět diferenciální nebo inkrementální zálohy).
- Záloha pouze jednoho logu může proběhnout najednou (záloha logu je povolena, když probíhá kompletní záloha databáze).
- Během zálohování nemůžete přidávat ani odebírat soubory do databáze.
- Soubory nelze zmenšovat, dokud probíhají zálohy databáze.
- Během zálohování jsou povoleny omezené změny modelu obnovy.
Když je provedena některá z těchto protichůdných operací, příkazy narazí na čekání na uzamčení, která jsou uvedena v sekci "Vysvětlení", následovaná obdržením zpráv 3023 a 3041.
Akce uživatele
Prohlédněte si harmonogramy různých aktivit údržby databáze a poté je upravte tak, aby tyto operace nebo příkazy nekolidovaly mezi sebou.
Více informací
SQL Server zaznamenává čas začátku a konec zálohy do databázemsdb. Můžete si prohlédnout historii záloh, abyste zjistili, zda při pokusu o inkrementální zálohování proběhla kompletní databázová záloha, a zda to způsobilo chybu. Můžete použít následující dotaz, který vám pomůže s tímto procesem:
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
Můžete také použít událost User Error Message v SQL Profiler Trace nebo událost error_reported v Extended Events ke sledování hlášení zpráv 3023 zpět aplikaci, která spustila příkaz Backup nebo jiný údržbový příkaz.