Ако се опитвате да архивирате регистрационните файлове на транзакциите в SQL Server или SQL Edge база данни, но получавате грешка, която гласи, че BACKUP LOG не може да се изпълни, защото няма текущо архивиране на базата данни , ще трябва да извършите поне едно пълно архивиране на базата данни, преди да опитате да архивирате регистрационните файлове на транзакциите.
Грешката
Ето пример за код, който води до грешката:
BACKUP LOG Music
TO DISK = '/var/opt/mssql/backups/Music.trn';
Резултат:
Msg 4214, Level 16, State 1, Line 1 BACKUP LOG cannot be performed because there is no current database backup.
Причината
Тази грешка възниква всеки път, когато се опитате да архивирате дневника на транзакциите, без първо да сте изпълнили пълно архивиране на базата данни.
Трябва да сте създали поне едно пълно архивиране, преди да можете да създавате резервни копия на регистрационни файлове.
Решението
Всичко, което трябва да направите, е да създадете поне едно пълно архивиране на базата данни, преди да опитате да архивирате регистрационните файлове.
Пример:
BACKUP DATABASE Music
TO DISK = '/var/opt/mssql/backups/Music.bak'
WITH FORMAT;
Сега регистрационните файлове на транзакциите могат да бъдат архивирани според нуждите:
BACKUP LOG Music
TO DISK = '/var/opt/mssql/backups/Music.trn';
Резултат:
Processed 3 pages for database 'Music', file 'Music_log' on file 1.