Jeśli próbujesz wykonać kopię zapasową dzienników transakcji w bazie danych SQL Server lub SQL Edge, ale pojawia się błąd informujący, że NIE można wykonać BACKUP LOG, ponieważ nie ma bieżącej kopii zapasowej bazy danych , musisz wykonać co najmniej jedną pełną kopię zapasową bazy danych, zanim spróbujesz wykonać kopię zapasową dzienników transakcji.
Błąd
Oto przykład kodu, który powoduje błąd:
BACKUP LOG Music
TO DISK = '/var/opt/mssql/backups/Music.trn';
Wynik:
Msg 4214, Level 16, State 1, Line 1 BACKUP LOG cannot be performed because there is no current database backup.
Przyczyna
Ten błąd występuje za każdym razem, gdy próbujesz wykonać kopię zapasową dziennika transakcji bez uprzedniego uruchomienia pełnej kopii zapasowej bazy danych.
Musisz utworzyć co najmniej jedną pełną kopię zapasową, zanim będziesz mógł tworzyć kopie zapasowe dziennika.
Rozwiązanie
Wszystko, co musisz zrobić, to utworzyć co najmniej jedną pełną kopię zapasową bazy danych, zanim spróbujesz wykonać kopię zapasową plików dziennika.
Przykład:
BACKUP DATABASE Music
TO DISK = '/var/opt/mssql/backups/Music.bak'
WITH FORMAT;
Teraz można wykonać kopię zapasową dzienników transakcji zgodnie z wymaganiami:
BACKUP LOG Music
TO DISK = '/var/opt/mssql/backups/Music.trn';
Wynik:
Processed 3 pages for database 'Music', file 'Music_log' on file 1.