Back to Home

PDU Features

Comprehensive PostgreSQL data recovery capabilities explained in detail. Click on any feature below to learn more about how it works.

Instant Recovery

Read files and surviving pages directly to extract data, including when no usable backup is available.

PITR requires a base backup and the corresponding WAL. PDU can read data files and surviving pages directly to extract parseable data. When relevant WAL is available, you can also filter deleted records by time or transaction. Results depend on the files and logs that remain.

Key Highlights

  • Read files directly without a full PITR replay
  • Works even without base backups or WAL archives
  • Extract surviving deleted data after an incident
  • Optional time/transaction filtering when WAL exists

Use Cases

  • 1Emergency recovery when no PITR backups are available
  • 2Rapid restore of accidentally deleted records or tables
  • 3Extract needed data without a full-database PITR restore
  • 4Retrieving critical rows while PITR chain is incomplete

Technical Details

  • 01Direct heap/page scanning without requiring base backups
  • 02Reconstructs tuples and schema metadata from on-disk pages
  • 03Optional WAL/time filters applied when WAL is present
  • 04Outputs recovered data separately to keep sources untouched

WAL-Based Recovery

Recover deleted or updated data from archived WAL files with time range and transaction filtering.

WAL records changes to PostgreSQL data. PDU parses surviving WAL and filters by time or transaction to extract deleted records and rows from before updates. Recoverable records are limited by the WAL that remains.

Key Highlights

  • Filter recovery records within the time range covered by surviving WAL
  • Transaction-level filtering for precise data extraction
  • Time range specification for targeted recovery operations
  • Support for both full and partial WAL archive sets

Use Cases

  • 1Recovering accidentally deleted records from the past few hours
  • 2Restoring data to a state before a faulty batch update
  • 3Extracting specific transactions for audit purposes
  • 4Rolling back unwanted changes without full database restore

Technical Details

  • 01Parses WAL segment files (16MB each by default)
  • 02Decodes INSERT, UPDATE, DELETE operations from WAL records
  • 03Supports PostgreSQL's standard WAL format across versions 10-18
  • 04Works with both compressed and uncompressed WAL archives

Safe & Non-destructive

Read-only operations ensure your original data files remain completely untouched.

PDU scans original data files and WAL in read-only mode and saves recovery results separately. It does not modify source files or the original database structure. Preserve copies of the damaged files before starting.

Key Highlights

  • 100% read-only operations on source files
  • No modifications to original data directory
  • Safe to run on production backup copies
  • Repeat recovery attempts on preserved copies

Use Cases

  • 1Carry out recovery on copies of production data
  • 2Testing different recovery strategies safely
  • 3Training and learning database recovery techniques
  • 4Forensic analysis of database state

Technical Details

  • 01Opens all files in read-only mode (O_RDONLY)
  • 02Creates output in separate directory structure
  • 03Never writes to source data directory
  • 04Memory-mapped file access for efficiency without modification

Fragment Scanning

Recover dropped or truncated tables through advanced fragment scanning technology.

After DROP or TRUNCATE, disk pages may remain until they are overwritten. PDU scans those pages and extracts readable records. It can also analyze surviving pages when the original table definition is unavailable.

Key Highlights

  • Recovers data from DROP TABLE operations
  • Retrieves truncated table contents
  • Works even without original table schema
  • A recovery method for DROP TABLE when no backup is available

Use Cases

  • 1Recovering from accidental DROP TABLE commands
  • 2Restoring data after TRUNCATE operations
  • 3Salvaging data from corrupted table files
  • 4Emergency recovery when backups are unavailable

Technical Details

  • 01Scans PostgreSQL heap pages (8KB blocks)
  • 02Identifies valid tuple headers and data
  • 03Reconstructs table structure from page contents
  • 04Handles both live and dead tuple recovery

PostgreSQL 10-18

Dedicated executables for PostgreSQL 10 through 18. Choose the program matching the source version.

PostgreSQL data file formats, page layouts and system catalogs differ between major versions. PDU provides dedicated executables for PostgreSQL 10 through 18. Choose the program that matches the source database version.

Key Highlights

  • Dedicated executables for each PostgreSQL major version
  • Reads supported storage formats with the matching executable
  • Checks source format information when available
  • Support for the latest PostgreSQL 18

Use Cases

  • 1Recovering data from legacy PostgreSQL 10 databases
  • 2Working with mixed-version database environments
  • 3Upgrading databases while preserving recovery capability
  • 4Testing recovery procedures across different versions

Technical Details

  • 01Version-specific page header parsing
  • 02Adapted tuple header interpretation per version
  • 03System catalog format awareness
  • 04TOAST value handling for each version

Lower Learning Curve

Extract data through interactive commands, with documentation and examples.

PDU provides interactive commands for data export and log scanning and reports the results. DBAs and developers can follow the documentation without first learning the complete PostgreSQL storage format.

Key Highlights

  • Intuitive command-line interface
  • Clear, human-readable output
  • Comprehensive documentation and examples
  • Progressive complexity for advanced users

Use Cases

  • 1Emergency recovery by on-call DBAs
  • 2Data recovery by development teams
  • 3Learning PostgreSQL internals through practical use
  • 4Rapid response to data incidents

Technical Details

  • 01Subcommand-based CLI structure (add, unload, scan, etc.)
  • 02Built-in help with usage examples
  • 03Verbose mode for detailed operation logging
  • 04JSON output option for programmatic integration

Need Help Using PDU?

Read the PostgreSQL guide for operating steps, requirements and recovery limits.

PostgreSQL 恢复能力