Christoph Berg 10d27139e2 Support 9.5 and recognize more flags
This follows the CRC32 macro renames in 9.5 (we do not attempt to
maintain support for the older versions), adds support for the
DB_SHUTDOWNED_IN_RECOVERY dbState, and adds support for missing BTree
and GIN page flags.

Satoshi Nagayasu
2016-03-19 17:52:28 +01:00
2014-06-10 13:10:11 -04:00
2016-03-19 17:52:28 +01:00
2016-02-02 19:04:03 +01:00

pg_filedump - Display formatted contents of a PostgreSQL heap, index,
              or control file.

Copyright (c) 2002-2010 Red Hat, Inc.
Copyright (c) 2011-2016, PostgreSQL Global Development Group

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

Original Author: Patrick Macdonald <patrickm@redhat.com>


------------------------------------------------------------------------
Overview:

pg_filedump is a utility to format PostgreSQL heap/index/control files
into a human-readable form.  You can format/dump the files several ways,
as listed in the Invocation section, as well as dumping straight binary.

The type of file (heap/index) can usually be determined automatically
by the content of the blocks within the file.  However, to format a
pg_control file you must use the -c option.

The default is to format the entire file using the block size listed in
block 0 and display block relative addresses.  These defaults can be
modified using run-time options.

Some options may seem strange but they're there for a reason.  For
example, block size.  It's there because if the header of block 0 is
corrupt, you need a method of forcing a block size.


------------------------------------------------------------------------
Compile/Installation:

To compile pg_filedump, you will need to have a properly configured
PostgreSQL source tree or complete install tree (with include files)
of the appropriate PostgreSQL major version.

There are two makefiles included in this package.  Makefile is a standalone
makefile for pg_filedump.  Alter its PGSQL_INCLUDE_DIR variable to point to
the PostgreSQL include files.  Makefile.contrib can be used if this package
was untarred in the contrib directory of a PostgreSQL build tree.

  make
  make install (if using Makefile.contrib)

It is also possible to use Makefile.contrib without being in the contrib
directory:

  make -f Makefile.contrib USE_PGXS=1

This method requires that the pg_config program be in your PATH, but should
not require any manual adjustments of the Makefile.


------------------------------------------------------------------------
Invocation:

pg_filedump [-abcdfhikxy] [-R startblock [endblock]] [-S blocksize] file

Defaults are: relative addressing, range of the entire file, block size
              as listed on block 0 in the file

The following options are valid for heap and index files:
  -a  Display absolute addresses when formatting (Block header
      information is always block relative)
  -b  Display binary block images within a range (Option will turn
      off all formatting options)
  -d  Display formatted block content dump (Option will turn off
      all other formatting options)
  -f  Display formatted block content dump along with interpretation
  -h  Display this information
  -i  Display interpreted item details
  -k  Verify block checksums
  -R  Display specific block ranges within the file (Blocks are
      indexed from 0)
        [startblock]: block to start at
        [endblock]: block to end at
      A startblock without an endblock will format the single block
  -S  Force block size to [blocksize]
  -x  Force interpreted formatting of block items as index items
  -y  Force interpreted formatting of block items as heap items

The following options are valid for control files:
  -c  Interpret the file listed as a control file
  -f  Display formatted content dump along with interpretation
  -S  Force block size to [blocksize]

In most cases it's recommended to use the -i and -f options to get
the most useful dump output.
Description
No description provided
Readme 93 KiB
Languages
C 98.4%
Makefile 1.6%