Learn more about SQL Server tools

mssqltips logo

Tutorials          DBA          Dev          BI          Career          Categories          Webcasts          Scripts          Today's Tip          Join

Tutorials      DBA      Dev      BI      Categories      Webcasts

DBA    Dev    BI    Categories


Restore SQL Server database and overwrite existing database



The RESTORE ... WITH REPLACE option allows you to overwrite an existing database when doing a restore.  In some cases when you try to do a restore you may get an error that says "The tail of the log for the database .. has not been backed up".


The RESTORE ... WITH REPLACE allows you to write over an existing database when doing a restore without first backing up the tail of the transaction log.  The WITH REPLACE basically tells SQL Server to just throw out any active contents in the transaction log and move forward with the restore.

If you try to restore using T-SQL commands you will get this error message:

Msg 3159, Level 16, State 1, Line 1
The tail of the log for the database "AdventureWorks" has not been backed up. Use BACKUP LOG WITH NORECOVERY to backup the log if it contains work you do not want to lose. Use the WITH REPLACE or WITH STOPAT clause of the RESTORE statement to just overwrite the contents of the log.
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.

If you try to restore using SQL Server Management Studio you will see this error message:


Restore full backup using WITH REPLACE
The command below will restore the database and disregard any active data in the current transaction log.

RESTORE DATABASE AdventureWorks FROM DISK = 'C:\AdventureWorks.BAK'

SQL Server Management Studio

To restore using SSMS do the following, on the options page for the restore select "Overwrite the existing database".

Last Update: 3/17/2009

More SQL Server Solutions

Post a comment or let the author know this tip helped.

All comments are reviewed, so stay on subject or we may delete your comment. Note: your email address is not published. Required fields are marked with an asterisk (*).

*Name    *Email    Email me updates 

Signup for our newsletter
 I agree by submitting my data to receive communications, account updates and/or special offers about SQL Server from MSSQLTips and/or its Sponsors. I have read the privacy statement and understand I may unsubscribe at any time.


Wednesday, August 08, 2018 - 4:27:08 AM - Srinivas Back To Top

This tip really worked for me.thank you

Wednesday, July 18, 2018 - 2:12:26 AM - Edvard Korsbęk Back To Top


Allways done so, but never understood why before reading this.


Best regards from Denmark


Edvard Korsbęk


Tuesday, November 01, 2016 - 4:05:12 PM - Mary Young Back To Top

My database has encrypted columns. 

I need some help in figuring out how to backup one database (FRDTest) and restore it into an existing database with a different name (FRDUserTest).  We’ve been able to successfully create a NEW database by restoring the backup, but cannot restore into an existing database .  

I get error 3154: The backup set holds a backup of a database other than the existing 'FRDUserTest'.  And, yes, I DO select "WITH REPLACE".



Learn more about SQL Server tools