Unique Advantages

PDU uses a single command interface to read PostgreSQL data files, WAL and disk fragments. This page explains how it is deployed, how it protects source files, and which formats it supports.


Simplicity: Two Files, Complete Solution

Minimal Footprint

PDU consists of only two files:

pdu{10-18}

The executable file for your PostgreSQL version

pdu.ini

Simple configuration file with just 2 key settings

Compare to Traditional Approaches

  • • No complex dependencies to install
  • • No lengthy setup procedures
  • • No compilation required
  • • No database server installation needed
  • • Works immediately after extraction

Unified Interface: One Tool for All Scenarios

PDU uses the same command interface for the following recovery methods:
ScenarioTraditional ToolsPDU
Corrupted databasepg_filedump + manual parsingb; → unload
Deleted recordspg_waldump + pg_dirtyreadscan → restore del
Updated recordspg_waldump + custom scriptsscan → restore upd
Dropped tablesNo solutiondropscan

PostgreSQL-Native Experience

PDU feels like a natural extension of psql. If you know PostgreSQL, you already know how to use PDU:

Familiar Commands

\lList databases
\dnList schemas
\dtList tables
\d+ tableDescribe table

Intuitive Navigation

use dbname;Switch database
set schema;Switch schema
\qExit

Non-Invasive: Read-Only Recovery

PDU Approach

  • Only reads source data files
  • Never modifies original files
  • Outputs to separate directory
  • Safe to retry multiple times

Traditional Tools Risk

  • pg_resetwal may cause data loss
  • Some tools modify source files
  • Errors may worsen corruption
  • A mistake can reduce what remains recoverable

Recovering Data After DROP TABLE

Recovery from Disk Fragments

When a table is dropped without a backup, traditional PostgreSQL tools offer no solution. The data files are immediately unlinked, and the metadata is removed from system catalogs.

PDU's dropscan command can recover data from dropped tables by scanning disk fragments for recoverable data pages.


Data Type Support

Professional Trial covers common PostgreSQL business types. The paid Professional and Enterprise editions provide the full supported type set, including the arrays and PostGIS types listed in the documentation.

Numeric Types

smallintintegerbigintnumericrealdouble precisionmoney

Text and Binary

char(n)varchar(n)textnamebytea

Date and Time

datetimetimetztimestamptimestamptzinterval

JSON, XML, and General Types

jsonjsonbjsonpathxmlbooleanuuid

Network and Bit Strings

inetcidrmacaddrbitvarbit

Other Common Types

enumdomaintsvectorrangemultirangevector

Professional and Enterprise Editions: Support the full data type set listed in the documentation. Community Edition differences, PostgreSQL version requirements, and currently unsupported types are listed there as well. View the full list


Version Compatibility

PDU provides a separate executable for each PostgreSQL major version to read that version's storage format:
PostgreSQL 10PostgreSQL 11PostgreSQL 12PostgreSQL 13PostgreSQL 14PostgreSQL 15PostgreSQL 16PostgreSQL 17PostgreSQL 18

EL 7/8/9

Ubuntu Linux

Debian Linux

Linux x86_64

Linux ARM64


Summary: Why Choose PDU

📦

Simple

Two files, zero dependencies

🔧

Unified

File, WAL and fragment recovery

🐘

Familiar

PostgreSQL-native experience

🛡️

Safe

Read-only, non-invasive

🎯

Unique

Recover data from dropped tables

✅

Compatible

PostgreSQL 10-18 support

PostgreSQL 文档