Recovery after any failure consists of restoring the database to a correct state. There are many different types of failures that can affect database processing. Some failures affect main memory (including database buffers) only, while others involve disk storage or backup storage devices. Among the causes of failure are the following:
Natural physical disasters such as fires, floods, earthquakes, or power outages
Sabotage or intentional contamination or destruction of data, hardware, or software facilities
Carelessness or unintentional destruction or contamination of data or facilities by operators or users
Disk malfunctions such as head crashes, defective disks, or unreadable tracks, which might result in loss of stored data
System crashes due to hardware malfunction, resulting in loss of main and cache memory
System software errors that result in abnormal termination or damage to the database management system
Applications software errors such as logical errors in a program that is accessing the database
Regardless of the cause of the failure, we need to study the possible effects so that we can protect or limit the damage to the database. The principal effects that concern us are the loss of main memory, the loss or corruption of the disk copy of the database, and the failure to write data safely to disk storage. Fortunately, there are techniques that can minimize these effects.
3.15.22.160