Transaction Log Based Application Error Recovery and Point In-Time Query
Database backups have traditionally been used as the primary mechanism to recover from hardware and user errors. High availability solutions maintain redundant copies of data that can be used to recover from most failures except user or application errors. Database backups are neither space nor time efficient for recovering from user errors which typically occur in the recent past and affect a small portion of the database. Moreover periodic full backups impact user workload and increase storage costs. In this paper, the authors present a scheme that can be used for both user and application error recovery starting from the current state and rewinding the database back in time using the transaction log.