Kevin Kempf's Blog

December 22, 2010

RMAN Backups – What’s in a name?

Filed under: 11g, RMAN — kkempf @ 11:34 am

Incremental, Level 0, Level 1, Differential, Cumulative

I’ve had some RMAN issues lately as a result of my Advanced Compression bug, and I began to dig through some definitions I’d taken for granted for a long time.  Reading Oracle’s documentation, it appears they’re purposefully confusing backup types.

If you’re like me, an Full backup means back everything up.  An incremental backup means backup everything changed since the last full or incremental, and a differential means backup all changes since the last full.  Based on those assumptions, as far as I can tell from Oracle’s documentation, this table may help you translate. Let’s assume a full database backup runs weekly and would be about 2gb and the nightly unique change is 100mb:

  • a full backup = incremental 0
  • a differential backup = incremental 1 cumulative
  • an incremental backup = incremental 1 (sometimes also called a differential incremental, just to further confuse)
  • a standalone “point in time” full = full
Industry Name Oracle’s Name RMAN Syntax Notes Approx. Backup Size for Example
?Full (Island) Full backup database Cannot be used with any incrementals. 2gb
Full Incremental 0 backup incremental level 0 cumulative database This full can be used with incrementals. 2gb
Differential Incremental 1 Cumulative backup incremental level 1 cumulative database This differential includes all changes since the last full. 100mb + 100mb/day
Incremental Incremental 1 Differential backup incremental level 1 database This incremental includes all changes since the last incremental. 100mb

Incremental vs. Differential

I suppose one last topic would be in order, which would revolve around whether one might use Incremental (Incremental 1 Differential) or Differential backups (Incremental 1 Cumulative).  From a practical standpoint, let’s assume you’re doing a restore via RMAN,

  • Incremental (Incremental 1 Differential)
    • Backups go faster and require less storage
    • Restores require the Incremental 0, plus all Incremental 1 backups, plus archivelogs as applicable (slower)
  • Differential (Incremental 1 Cumulative)
    • Backups go slower and require more storage
    • Restores require the Incremental 0, plus 1 Incremental 1 backup, plus archivelogs as applicable (faster)

Parting Shot

Is it just me, or is Oracle’s naming contrary to industry standards?  Are they purposefully trying to confuse things?  If I went to an IT person who didn’t know Oracle and said I was running an Incremental Differential backup, I believe they’d think I had no concept of backup terminology.


Blog at