SqlBak Blog

The log or differential backup cannot be restored because no files are ready to rollforward

Working with SQL Server sometimes you have to restore your database and sooner or later during the restoration process you can receive the following error message:

Msg 3117, Level 16, State 1, Line 1
The log or differential backup cannot be restored because no files are ready to roll forward.
Msg 3013, Level 16, State 1, Line 1
RESTORE LOG is terminating abnormally.

You can face this error message when you are trying to restore a differential database backup.

The log or differential backup cannot be restored because no files are ready to rollforward – Solution

You receive this error message because you haven’t restored SQL Server full backup or it has been restored without the “WITH NORECOVERY” option. All you need to do before restoring a differential backup is to make sure that a full database backup was restored with the “WITH NORECOVERY” option.

Here you can find a simple example of how to restore a differential backup

RESTORE DATABASE AdventureWorks FROM DISK = 'D:\AdventureWorks_Full.bak' WITH NORECOVERY
RESTORE DATABASE AdventureWorks FROM DISK = 'D:\AdventureWorks_Diff.bak' WITH RECOVERY

8 thoughts on “The log or differential backup cannot be restored because no files are ready to rollforward”

  1. Is there a way to restore a differential backup after a restore of the full backup has been restored with “WITH_RECOVERY” option have been performed?

    Reply
  2. select 1 full backup and differential backup file and restore

    suppose you have last full backup of yesterday 12:00AM and differential backups every 15 minuts and you want to restore till 3:00PM then just select 1 full backup of yesterday 12:00AM and all differentials till 3:00PM togather and restore
    Done

    Reply
  3. what if I just want to sync the 2 databases on 2 servers using differential backup? say I have already restored the full backup of my Prod DB into my testing DB on day 1, can I then use the differential backup of my Prod DB to restore it back to my testing DB on day 2? Cause I do not sync the DB using full backup, it’s too large and too slow

    Reply
    • Hello Jing,

      Thank you for your message.

      In this case, we recommend connecting your two servers to SqlBak. You can set up the backup jobs on your Production DB and configure the restore jobs for your Testing DB within the same job settings.

      Remember to point out in checkbox that differential backups are also restored as part of this configuration.

      If you have any further questions or need assistance, please feel free to reach out.

      Best regards,
      Oleg

      Reply

Leave a Comment