diff --git a/pages/common/pg_combinebackup.md b/pages/common/pg_combinebackup.md new file mode 100644 index 00000000000000..e3d06fedb694ad --- /dev/null +++ b/pages/common/pg_combinebackup.md @@ -0,0 +1,37 @@ +# pg_combinebackup + +> Reconstruct a full (synthetic) PostgreSQL backup from an incremental backup chain. +> When specifying multiple backups order them from oldest to newest. +> More information: . + +- Combine a full and incremental backup into one synthetic full backup: + +`pg_combinebackup {{path/to/full_backup}} {{path/to/incremental_backup}} {{[-o|--output]}} {{path/to/output_directory}}` + +- Perform a dry run to show what would be done, without creating files: + +`pg_combinebackup {{[-n|--dry-run]}} {{path/to/full_backup}} {{path/to/incremental_backup}} {{[-o|--output]}} {{path/to/output_directory}}` + +- Use hard links instead of copying files (faster, same filesystem required): + +`pg_combinebackup {{[-k|--link]}} {{path/to/full_backup}} {{path/to/incremental_backup}} {{[-o|--output]}} {{path/to/output_directory}}` + +- Use file cloning (reflinks) for efficient copy if supported: + +`pg_combinebackup --clone {{path/to/full_backup}} {{path/to/incremental_backup}} {{[-o|--output]}} {{path/to/output_directory}}` + +- Use the `copy_file_range` system call for efficient copying: + +`pg_combinebackup --copy-file-range {{path/to/full_backup}} {{path/to/incremental_backup}} {{[-o|--output]}} {{path/to/output_directory}}` + +- Relocate a tablespace during reconstruction: + +`pg_combinebackup {{path/to/backup1 path/to/backup2 ...}} {{[-T|--tablespace-mapping]}} /{{path/to/old_tablespace}}=/{{path/to/new_tablespace}} {{[-o|--output]}} {{path/to/output_directory}}` + +- Disable fsync for faster but unsafe writes (testing only): + +`pg_combinebackup {{[-N|--no-sync]}} {{path/to/backup1 path/to/backup2 ...}} {{[-o|--output]}} {{path/to/output_directory}}` + +- Show detailed debug output: + +`pg_combinebackup {{[-d|--debug]}} {{path/to/backup1 path/to/backup2 ...}} {{[-o|--output]}} {{path/to/output_directory}}`