RMAN · betaSRC · RMAN backup piece512B BLOCKS

Open the sealed backup.

RMAN backup pieces are a sealed, proprietary format. reclaimDB reads them at the byte level — so you can answer "are these backups even restorable?" without a target database to restore into.

Status · v4.16

Backup-piece parsing and the backup catalog are GA (plain, encrypted, compressed). Extraction, incremental merge, ZSTD MEDIUM and password/dual-mode decryption are Beta. Hard limits: TDE / transparent-mode pieces are not supported (no wallet-derived key path exists), and KGC-compressed pieces are hard-refused with a clear message. For production use, check a concrete piece with us first.

//What is verified here

//Step by step

01

Inspect a backup piece — no catalog, no target DB

reclaimdb backup-scan /backup/*.bkp
# Parse a controlfile backup for the RMAN inventory:
reclaimdb backup-catalog /backup/c-*.ctl

Reads the self-describing headers of the piece: DB, DBID, tablespaces, datafiles.

02

Reconstruct datafiles from the piece

reclaimdb backup-extract full.bkp -o /tmp/extracted/
# Incremental: merge level-0 + level-1 in one step
reclaimdb backup-extract level0.bkp level1.bkp -o /tmp/extracted/
03

Prove restorability → then extract

reclaimdb verify /tmp/extracted/*.dbf
reclaimdb restore -m meta.json --csv ./out/ /tmp/extracted/*.dbf
04

Encrypted backups (RMAN SET ENCRYPTION)

Password and dual-mode pieces decrypt via PBKDF2-HMAC-SHA1 + AES-CFB. Blocks that fail Oracle's block-tail check are excluded loudly (“EXTRACTION UNVERIFIED” banner + non-zero exit), never emitted wrong. TDE / transparent-mode pieces have no wallet-derived key path and are not supported; 26ai envelopes are fail-closed.

reclaimdb --rman-password MyPass backup-extract encrypted.bkp -o /tmp/
# Or with an explicit KEK:
reclaimdb --rman-key <32-byte-hex> backup-scan encrypted.bkp
05

"Are the backups really restorable?" — scheduled via cron

There is no built-in scheduler; the validation pattern is a cron job with --quiet and a deterministic exit code:

# /etc/cron.d/reclaimdb-bkp-check
0 3 * * * oracle reclaimdb --quiet backup-scan /backup/*.bkp || mail -s "BKP UNREADABLE" ops@company

//Relevant exit codes

0
Success
10
Not a valid backup piece (magic)
11
Encrypted without a (matching) KEK / password
3
Piece not found
30
Partial success across pieces

Test this case on your data

Send us the kind of source you actually have — a .dmp, a .dbf, an RMAN backup piece or a storage snapshot. You get a signed evaluation binary, a sample report, and an honest assessment of which paths apply to your case.

office@reclaimdb.com →

↑ Overview