Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
Showing results for 
Search instead for 
Did you mean: 

You have regular backups, and a disaster recovery plan.  But would it execute smoothly if worst came to worst?

Here's one way you might check database consistency on your disaster recovery system.

Incremental Backup Flavors

Many SAP IQ administrators make incremental backups between full backups. You are probably familiar with the two kinds of incremental backups.

All blocks changed since the last backup of any kind (FULL or INCREMENTAL)All blocks changed since the last FULL backup
Smaller and faster to back up, but slower to restoreSlower to back up, but faster to restore, because you only restore the last full backup and then the last incremental archive.

Restoring on a Production System

For complete details, see the SAP IQ Reference: Statements and Options. Basically, you must restore first the full backup, then the subsquent incremental backups.

To fully restore the system, you must restore all incremental backups in the right sequence. This means that, on a production system, you should never start SAP IQ, or your database, between incremental backups.

Restoring on a Disaster Recovery System

On a non-production system, such as your disaster recovery system, however, you might want to start a database between incremental restore operations to verify that the database is consistent.

What could go wrong?

Unfortunately, if you start a database between incremental restores, startup fails with the message "Unable to use transaction log."

The good news is, there's an easy fix. To solve this problem, just remove the transaction log.

Checking Database Consistency

To review, here's the sequence of steps to check, for example, database consistency between virtual decoupled backups.

  1. Make a full virtual decoupled backup of the production system.
  2. Take an INCREMENTAL_SINCE_FULL backup of the production system.
  3. Copy all files to the disaster recovery system.
  4. Restore virtual decoupled FULL backup.
  5. Restore virtual INCREMENTAL_SINCE_FULL backup.
  6. Start database with -iqro 1 (read only), fully verify it, and then shut down.
  7. Take incremental backup of production system.
  8. Copy all files across to the disaster recovery system.
  9. Restore incremental backup.
  10. Start database unsuccessfully and receive "Unable to use transaction log" message.
  11. Remove the transaction log.
  12. Start the database. Fully verify it, and then shut it down.

Schedule this procedure regularly to help ensure that your disaster recovery system will be ready if needed.