Tuesday, June 17, 2014

Is Full Backup is Sufficient to Recover SQL Server Database?

Data is very important for everyone, ranging from individual to big organizations. For me, data is my life. I can’t think, what will be my life without data. So I regularly manage and update data. If you think that your data is also important for you as of mine then you should also manage and update your data.

What is Data?
Data can be anything like list of records, phonebook, measurements, survey records, employee records or even a description of any things. In the other words, you can say that data is a set of records.

How to Manage your Data?
Creating copy or copies of your data is the primary method for data management. Just create copy of your important data and store it on external hard drive, pen drive, or any other removable media so that you can recover any lost or deleted data from backup copy. Fortunately, Microsoft SQL server provides backup & restore facilities for data management.

SQL Server Backup
Backing up of your SQL server database is very important for protecting your database from data loss. SQL server facilitates for backing up transaction log, whole database, partial database or sets of files & filegroups. For these, SQL server offers following backup techniques:
  • Tranaction Log Backup: It records all the changes performed in the database that were not available in the previous log backup. To create a transaction log backup, you need to create at least one full backup of your database before. I recommend you to take a transaction log backup of your database frequently that will minimize data loss exposure and truncate the old transaction log.
  • Full Backup: It is also known as database backup because it backs up whole database including transaction log. It can be performed on the basis of your business need. Full backup contains the data at the time of full backup finished.
  • Differential Backup: It is faster in comparison of full backup because it contains the data since last full backup.
  • File Backup: It backs up one or more SQL server database files or filegroups. You can backup whole filegroup instead of individual files.

Data Loss, it can happen to anyone
You should always prepare of it. It can happen with anyone at anytime. So it is very important of everybody to prepare of it and make a suitable disaster recovery plan to avoid data loss and minimize the business downtime when data loss event will occur.

So now you may need to make a full backup of your SQL server database. You can create full backup of your SQL server database by using SQL server management studio, transact-SQL, or powershell.

Is Full Backup is Sufficient Enough?
If you have a read-only SQL server database or data in your SQL server database is very static then full backup is sufficient for you. Possibly you may recover your whole database with the help of full database backup.  But think differently, your database experiences frequent modification regularly then full backup is not sufficient for you because it does not contain data after full backup. To recover every bit of your data, you need to create other backups such as differential or transaction log backup. I have already discussed about these backups in the above paragraphs.

What is the role of recovery model in transaction log backup?
SQL server facilitates database administrators to manage their transaction logs through recovery model. There are three types of recovery model in SQL server: Simple, Full & Bulk-Logged. A database administrator can take backup of transaction log when his/her database in Full or Bulk Logged recovery models but this is not possible in simple recovery model.

Points to Ponder:
  • Make backup of database
  • Data is key to success
  • Regularly update database backup
  • Different types of backup required to recover database
  • Simple recovery model does not allow for transaction log backup
I hope that you have enjoyed to reading my article. As always, share your thoughts through comment.


  1. Very great post. I simply stumbled upon your blog and wanted to say that I have really enjoyed browsing your weblog posts. After all I’ll be subscribing on your feed and I am hoping you write again very soon!

  2. Thanks for your valuable response. We have different categories for the database corruption. You can also check them by the labels.