What is incremental backup?

What is incremental backup?

In the early days of databases, if you had a 10TB database, you had to back up all 10TB every single night. It was slow, it ate up storage, and it crushed system performance.

RMAN Incremental Backups changed the game. Instead of copying the entire database every time, an incremental backup only copies the blocks that have changed since the last backup.

Think of it like this: If you are writing a book, a "Full Backup" is printing the whole manuscript every night. An "Incremental Backup" is just printing the new pages you wrote today.


1. How It Works: The "Level" System

Oracle uses a numbering system to keep track of what needs to be backed up.

Level 0 (The Foundation)

A Level 0 backup is physically identical to a "Full Backup." It contains every used block in the datafiles. However, it is tagged as "Level 0" so that future incremental backups know where to start counting from. You cannot have an incremental strategy without a Level 0 starting point.

Level 1 (The Delta)

A Level 1 backup only grabs the blocks that were modified after the last Level 0 (or Level 1). There are two types:

  • Differential (Default): Backs up all changed blocks since the most recent Level 1 or Level 0 backup.

  • Cumulative: Backs up all changed blocks since the most recent Level 0 backup.


2. Why Use Incremental Backups?

A. Speed (The "BCT" Magic)

By default, RMAN has to scan every block in your database to see if it changed, which can still take time. If you enable Block Change Tracking (BCT), Oracle maintains a small binary file that keeps a map of exactly which blocks have changed.

  • Result: RMAN reads the map and goes straight to the changed blocks. A backup that used to take 8 hours can drop to 20 minutes.

B. Reduced Storage Costs

Since you aren't storing the same static data over and over, you save a massive amount of disk or cloud storage space.

C. Faster Recovery (Sometimes)

While restoring multiple incremental pieces can sometimes be slower than one big file, using Incrementally Updated Backups (where the Level 1 is "merged" into the image copy daily) gives you the best of both worlds: fast backups and near-instant restores.


3. Side-by-Side: Full vs. Incremental

FeatureFull BackupIncremental Backup
Data CopiedEvery used block in the file.Only changed blocks.
Backup TimeLong (proportional to DB size).Short (proportional to change rate).
I/O ImpactHigh.Low (with BCT enabled).
Storage Required100% of DB size.5–10% (typical daily change).

4. The Commands

To start an incremental strategy, you first take the parent backup:

SQL
RMAN> BACKUP INCREMENTAL LEVEL 0 DATABASE;

Then, on subsequent nights, you take the daily changes:

SQL
RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE;

5. Summary: The Best Practice

For most modern production databases, a "Level 0 on Sunday, Level 1 Monday-Saturday" strategy is the sweet spot. It provides a reliable recovery window while keeping the daily "performance tax" on your production server to an absolute minimum.


Peer Tip: Always monitor your "Change Rate." If your database is under a massive batch load where 90% of the blocks change every day, an incremental backup will take just as long as a full one. Incremental backups are most effective when your daily change rate is under 20%.

Looking for servers Rental ?

Call Our Expert :


  • (call for rental enquiries)

Email us :