Skip to content
Microsoft SQL Server

SQL Server Error 4214

BACKUP LOG cannot be performed because there is no current database backup

Severity 16 Backup & Restore
Applies to: All supported SQL Server versions (2016 to 2025), Azure SQL Managed Instance (where you can take log backups yourself)
Last technically reviewed 23 October 2026 on SQL Server 2025 (17.0.1145.4)
The full message
Msg 4214, Level 16, State 1, Line 1
BACKUP LOG cannot be performed because there is no current database backup.
Other forms of this message
Followed by (always)
Msg 3013, Level 16, State 1, Line 1
BACKUP LOG is terminating abnormally.
SQL Server error log (documented by Microsoft)
Backup Error: 3041, Severity: 16, State: 1.
BACKUP failed to complete the command BACKUP LOG AppDb. Check the backup application log for detailed messages.
Error number
4214
Severity
16 (user-correctable error)
State
1
Product
Microsoft SQL Server Database Engine
Versions
All supported SQL Server versions (2016 to 2025), Azure SQL Managed Instance (where you can take log backups yourself)
Last reviewed
23 October 2026

What it means

Error 4214 means SQL Server refused a transaction log backup because the database has no full (or differential) backup that starts its log chain, so the log backup could never be restored.

A log backup is only useful on top of a full backup: during a restore, SQL Server restores the full backup and then applies each log backup in order. When a database uses the FULL or BULK_LOGGED recovery model but nothing has started a log chain yet, SQL Server stops the BACKUP LOG with 4214 rather than write a backup you could never restore. The statement then ends with Msg 3013 ... BACKUP LOG is terminating abnormally.

"No current database backup" does not always mean the database was never backed up. Switching the recovery model to SIMPLE and back to FULL breaks the chain, and the database behaves as if it had no full backup until you take a new one. Until then the log is truncated at checkpoints, much as in SIMPLE recovery, which is why last_log_backup_lsn in sys.database_recovery_status is NULL.

Common causes

  • A new database, or one just switched to FULL recovery, has never had a full backup, and a log backup job ran first.
  • The recovery model was switched to SIMPLE (for example to shrink the log) and back to FULL, which broke the log chain.
  • A database was restored WITH RECOVERY from a backup on another server or attached from files, and no full backup has been taken on this server since.
  • A maintenance plan or job schedules log backups for every database in FULL recovery, including ones that the full backup job skips.

Diagnose it

Read-only These queries only read metadata and dynamic management views. They do not change data, permissions or configuration, so they are safe to run first.

Is there a log chain at all?

SELECT d.name, d.recovery_model_desc, rs.last_log_backup_lsn
FROM sys.databases AS d
JOIN sys.database_recovery_status AS rs ON rs.database_id = d.database_id
WHERE d.name = N'AppDb';
What to look for

recovery_model_desc FULL or BULK_LOGGED with last_log_backup_lsn NULL means no log chain has started: a log backup fails with 4214 until a full or differential backup is taken.

When was the last full backup?

SELECT TOP (5) type, backup_start_date, backup_finish_date, is_copy_only, recovery_model
FROM msdb.dbo.backupset
WHERE database_name = N'AppDb'
ORDER BY backup_finish_date DESC;
What to look for

No row of type = 'D' (full), or a full backup taken before the recovery model last changed to SIMPLE, explains the error.

Did someone switch the recovery model?

EXEC sp_readerrorlog 0, 1, N'recovery';
What to look for

Messages such as Setting database option RECOVERY to SIMPLE for database 'AppDb' show when the chain was broken and from which session.

How to fix it

Each fix is labelled with what it changes. Try read-only checks and the least invasive fix first, and test changes outside production.

Take a full backup, then the log backup

Changes database state

A full backup starts the log chain; log backups succeed straight after it. Back up to storage you keep: every later log backup depends on this file. If a full backup exists and only the chain was broken by a recovery model switch, a differential backup also restarts the chain and is usually smaller.

Caution: Do not back up to DISK = 'NUL' to make the error go away. That starts a log chain on a backup that does not exist, so none of the following log backups can be restored.

BACKUP DATABASE AppDb
TO DISK = N'D:\Backups\AppDb_full_20261023.bak'
WITH CHECKSUM;

BACKUP LOG AppDb
TO DISK = N'D:\Backups\AppDb_log_20261023_1400.trn'
WITH CHECKSUM;

Make the backup jobs run in the right order

Client or network side

Schedule the first full backup of a new database before its first log backup, and include every FULL recovery database in the full backup job. If your backup tool can detect a database with no full backup, have it take one or report it, rather than fail every few minutes.

Use SIMPLE recovery deliberately if point-in-time restore is not needed

Changes configuration

If nobody needs to restore this database to a point in time (for example a staging or reporting copy that is rebuilt), the SIMPLE recovery model needs no log backups at all, so the log backup job should leave it out. Decide this with whoever owns the data.

Caution: In SIMPLE recovery you can restore only to the last full or differential backup. Do not switch a production database to SIMPLE to silence this error.

ALTER DATABASE AppDb SET RECOVERY SIMPLE;

Examples

Log backup before any full backup

-- Throwaway database in FULL recovery that has never had a full backup
ALTER DATABASE AppDb SET RECOVERY FULL;
BACKUP LOG AppDb TO DISK = 'NUL';   -- NUL discards the output; the error comes first
Result
Msg 4214, Level 16, State 1, Line 3
BACKUP LOG cannot be performed because there is no current database backup.
Msg 3013, Level 16, State 1, Line 3
BACKUP LOG is terminating abnormally.

Reproduced on SQL Server 2025 (17.0.1145.4), 23 October 2026.

Switching to SIMPLE and back breaks the chain

ALTER DATABASE AppDb SET RECOVERY FULL;
BACKUP DATABASE AppDb TO DISK = 'NUL';   -- lab only: a full backup starts the chain
BACKUP LOG AppDb TO DISK = 'NUL';        -- works

ALTER DATABASE AppDb SET RECOVERY SIMPLE;   -- for example, to shrink the log
ALTER DATABASE AppDb SET RECOVERY FULL;
BACKUP LOG AppDb TO DISK = 'NUL';        -- fails: the chain is broken
Result
Msg 4214, Level 16, State 1, Line 7
BACKUP LOG cannot be performed because there is no current database backup.
Msg 3013, Level 16, State 1, Line 7
BACKUP LOG is terminating abnormally.

Reproduced on SQL Server 2025 (17.0.1145.4), 23 October 2026.

How to prevent it

Take a full backup as part of creating a database, and again straight after any change of recovery model back to FULL or BULK_LOGGED. Make the log backup job check last_log_backup_lsn (or let your backup tool do it) so a missing full backup is reported as such instead of failing every few minutes.

Avoid switching to SIMPLE to manage log size; schedule log backups often enough instead. If the log is filling up, see error 9002 for the safe ways to free it.

Common questions

I take full backups every night. Why do I still get 4214?

Usually because the recovery model was switched to SIMPLE and back to FULL after the last full backup, or the full backup job skips this database. Check last_log_backup_lsn and the backup history; one new full or differential backup fixes it.

Is my database in FULL recovery even though log backups fail?

Yes, sys.databases shows FULL, but until a full or differential backup is taken the log is truncated at checkpoints as if it were SIMPLE. That is why the log does not grow and why a log backup would be useless.

Learn more on CodeWithSQL

Official documentation

Last technically reviewed 23 October 2026; examples and diagnostics run on SQL Server 2025 (17.0.1145.4). Message text checked against the engine's sys.messages catalogue.

Still stuck on a SQL Server error?

Browse the full SQL Server error library, or get hands-on help from an experienced SQL professional.