Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Poprawka:„Nie można wykonać DZIENNIKA KOPII ZAPASOWEJ, ponieważ nie ma bieżącej kopii zapasowej bazy danych”. w SQL Server/SQL Edge

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.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dodaj konto pocztowe bazy danych do profilu (T-SQL)

  2. SQL Server:kolumny indeksu używane w podobnym?

  3. Jak sprawdzić, czy kolumna wyliczana jest deterministyczna w SQL Server

  4. Przechowuj wiele wartości bitowych w jednej kolumnie tabeli

  5. Utwórz zapytanie w SQL Server 2017