Every database require a recovery model which signifies that what sort of backup is required or can be perform by the user to restore the data which could be lost due to any hardware failure or other issue.
There are generally three types of recovery models of database, these are explained as following below.
1. Simple Recovery :
In this model, the transaction logs get automatically removed without causing and change to the files size, because of this it is difficult to make log backups. Simple Recovery does not support backup of transaction log. It supports both full and bulk_logged backup operations.
Some operations that aren’t supported by this model are : Log shipping, AlwaysOn or Mirroring and Point-in-time restore.
In this case the database is use only for testing and development. The data in this operation is static. It does not have the provision for point-to-time recovery.
2. Full Recovery :
Unlike simple recovery, it supports backups of transaction log. There will no loss of work due to damaged or lost files as this model keeps tract of every operation performed on database.
It supports point-in-time for recovery for database, because of which it can recover upto an arbitrary point. When this model is use by database, the transaction logs will grow in huge number(infinitely) which will cause a problem like system crash. So to prevent it we must backup transaction log on regular basis.
This setup provides more options.
3. Bulk logged :
This model has similarity with Full Recovery Model as in both transaction logs are backup. It has high performance for bulk operations. It helps in importing bulk data quicker than other model and this keeps the transaction file size low. It did not support point-in-time recovery.
If you perform the transactions under this model which require transaction log restoration, then there could be data loss.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Database Recovery Techniques in DBMS
- How to pre populate database in Android using SQLite Database
- Difference between Database Administrator (DBA) and Database Engineer
- Difference between Centralized Database and Distributed Database
- Why recovery is needed in DBMS
- Log based Recovery in DBMS
- Algorithm for Recovery and Isolation Exploiting Semantics (ARIES)
- Data Models in DBMS
- Designing models in Cassandra
- What is Database ?
- Multimedia Database
- Join algorithms in Database
- Introduction of Standby Database
- Cassandra (NoSQL) Database
- Concept of Time in database
- Create database in Cassandra
- SQL queries on FILM Database
- Different types of Database Users
- Difference between Blockchain and a Database
- Problems due to database unavailability
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.