Pokud se pokoušíte zálohovat protokoly transakcí v databázi SQL Server nebo SQL Edge, ale zobrazí se chyba, že ZÁLOHOVÁNÍ LOG nelze provést, protože neexistuje žádná aktuální záloha databáze , budete muset provést alespoň jednu úplnou zálohu databáze, než se pokusíte zálohovat protokoly transakcí.
Chyba
Zde je příklad kódu, který vede k chybě:
BACKUP LOG Music
TO DISK = '/var/opt/mssql/backups/Music.trn';
Výsledek:
Msg 4214, Level 16, State 1, Line 1 BACKUP LOG cannot be performed because there is no current database backup.
Příčina
K této chybě dochází, kdykoli se pokusíte zálohovat protokol transakcí, aniž byste nejprve spustili úplnou zálohu databáze.
Než budete moci vytvářet zálohy protokolů, musíte mít vytvořenou alespoň jednu úplnou zálohu.
Řešení
Vše, co musíte udělat, je vytvořit alespoň jednu úplnou zálohu databáze, než se pokusíte zálohovat soubory protokolu.
Příklad:
BACKUP DATABASE Music
TO DISK = '/var/opt/mssql/backups/Music.bak'
WITH FORMAT;
Nyní lze protokoly transakcí zálohovat podle potřeby:
BACKUP LOG Music
TO DISK = '/var/opt/mssql/backups/Music.trn';
Výsledek:
Processed 3 pages for database 'Music', file 'Music_log' on file 1.