SQLServerまたはSQLEdgeデータベースのトランザクションログをバックアップしようとしているが、現在のデータベースバックアップがないため、バックアップログを実行できないというエラーが表示された場合 、トランザクションログをバックアップする前に、データベースの完全バックアップを少なくとも1回実行する必要があります。
エラー
エラーが発生するコードの例を次に示します。
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.
原因
このエラーは、最初にデータベースの完全バックアップを実行せずにトランザクションログをバックアップしようとすると発生します。
ログバックアップを作成する前に、少なくとも1つの完全バックアップを作成しておく必要があります。
ソリューション
ログファイルのバックアップを試みる前に、少なくとも1つの完全なデータベースバックアップを作成するだけです。
例:
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.