postgresql/src/bin/pg_dump
Marc G. Fournier c7b40e6058 This commit represents a clean compile with the new templates under
FreeBSD

The Makefile(s) have all been cleaned up such that there is a single
LDFLAGS vs LD_ADD or LDADD or LDFLAGS or LDFLAGS_BE.  The Makefile(s)
should be alot more straightforward then they were before...and
consistent
1997-04-04 10:43:16 +00:00
..
Makefile.in This commit represents a clean compile with the new templates under 1997-04-04 10:43:16 +00:00
README Postgres95 1.01 Distribution - Virgin Sources 1996-07-09 06:22:35 +00:00
common.c Various patches for nextstep by GregorHoffleit 1997-02-13 08:32:20 +00:00
pg_dump.c Dumping sequence relations as 'CREATE SEQUENCE ...'. 1997-04-02 04:17:27 +00:00
pg_dump.h Dumping sequence relations as 'CREATE SEQUENCE ...'. 1997-04-02 04:17:27 +00:00
pg_dumpall Update handling of backslashes, and pg_user dump. 1997-01-19 10:15:59 +00:00

README

pg_dump is a utility for dumping out a postgres database into a script
file containing query commands.  The script files are in a ASCII
format and can be used to reconstruct the database, even on other
machines and other architectures.  pg_dump will produce the queries
necessary to re-generate all user-defined types, functions, tables,
indices, aggregates, and operators.  In addition, all the data is
copied out in ASCII format so that it can be readily copied in again.


To build:

	   % gmake clean install

This version of the program will read in your postgres95 database and
output the schema and the data tuples in SQL.  The dumps are useful
for moving from one postgres95 installation to another.  


How to use pg_dump:
-------------------

The command line options are fairly self explanatory.  Use -help to
see the command line options.   recommend using -v to get
more verbose descriptions of what pg_dump is doing.

After running pg_dump, one should examine the output script file for any 
warnings, especially in light of the limitations listed below.

A typical use of pg_dump:

	%  pg_dump -v -f oldDB.dump  oldDB
	%  createdb newDB
 	%  psql newDB < oldDB.dump


Caveats and limitations:
------------------------

pg_dump has a few limitations.  The limitations mostly stem from
difficulty in extracting certain meta-information from the system
catalogs.   

   rules and views:  
	pg_dump does not understand user-defined rules and views and
	will fail to dump them properly.  (This is due to the fact that
	rules are stored as plans in the catalogs and not textually)
	
   partial indices:
	pg_dump does not understand partial indices. (The reason is
	the same as above.  Partial index predicates are stored as plans)
	
   large objects:
	pg_dump does not handle large objects.  Large
	objects are ignored and must be dealt with manually.

   oid preservation:
 	pg_dump does not preserve oid's while dumping.  If you have
	stored oid's explicitly in tables in user-defined attributes,
	and are using them as keys, then the output scripts will not
	regenerate your database correctly. 

pg_dump requires postgres95 beta0.03 or later.

Bug-reporting
--------------

If you should find a problem with pg_dump, it is very important that
you provide a (small) sample database which illustrates the problem.
Please send bugs, questions, and feedback to the
	postgres95@postgres95.vnet.net