mirror of
https://github.com/postgres/postgres.git
synced 2025-12-04 12:02:48 +03:00
206 lines
5.4 KiB
Groff
206 lines
5.4 KiB
Groff
.\" This is -*-nroff-*-
|
|
.\" XXX standard disclaimer belongs here....
|
|
.\" $Header: /cvsroot/pgsql/src/man/Attic/postgres.1,v 1.7 1997/09/24 03:20:54 momjian Exp $
|
|
.TH POSTGRES95 UNIX 12/08/96 Postgres95 Postgres95
|
|
.SH NAME
|
|
postgres \(em the Postgres backend server
|
|
.SH SYNOPSIS
|
|
.BR "postgres"
|
|
[\c
|
|
.BR "-B"
|
|
n_buffers]
|
|
[\c
|
|
.BR "-D"
|
|
data_directory]
|
|
[\c
|
|
.BR "-E"
|
|
]
|
|
[\c
|
|
.BR "-F"
|
|
]
|
|
.br
|
|
[\c
|
|
.BR "-P"
|
|
filedes]
|
|
[\c
|
|
.BR "-Q"
|
|
]
|
|
[\c
|
|
.BR "-S n_buffers"
|
|
]
|
|
[\c
|
|
.BR "-e"
|
|
]
|
|
.br
|
|
[\c
|
|
.BR "-d"
|
|
debug_level]
|
|
[\c
|
|
.BR "-o"
|
|
output_file]
|
|
[\c
|
|
.BR "-s"
|
|
]
|
|
[dbname]
|
|
.in -5n
|
|
.SH DESCRIPTION
|
|
The Postgres backend server can be executed directly from the user shell.
|
|
This should be done only while debugging by the DBA, and should not be
|
|
done while other Postgres backends are being managed by a
|
|
.IR postmaster
|
|
on this set of databases.
|
|
.PP
|
|
The optional argument
|
|
.IR dbname
|
|
specifies the name of the database to be accessed.
|
|
.IR Dbname
|
|
defaults to the value of the
|
|
.SM USER
|
|
environment variable.
|
|
.PP
|
|
The
|
|
.IR postgres
|
|
server understands the following command-line options:
|
|
.TP 5n
|
|
.BR "-D" " data_directory"
|
|
This option specifies the pathname of the directory that contains the
|
|
database system data (the tables, the catalogs, etc.). If you don't
|
|
specify this option, Postgres uses the value of the PGDATA environment
|
|
variable. You must either specify a -D option or set PGDATA.
|
|
|
|
The data directory pathname for a database system is normally determined when
|
|
the database system is created with
|
|
.IR initdb ,
|
|
with a --pgdata option to
|
|
.IR initdb .
|
|
.TP
|
|
.BR "-B" " n_buffers"
|
|
If the backend is running under the
|
|
.IR postmaster ,
|
|
.IR "n_buffers"
|
|
is the number of shared-memory buffers that the
|
|
.IR "postmaster"
|
|
has allocated for the backend server processes that it starts. If the
|
|
backend is running standalone, this specifies the number of buffers to
|
|
allocate. This value defaults to 64, and each buffer is 8k bytes.
|
|
.TP
|
|
.BR "-E"
|
|
Echo all queries.
|
|
.TP
|
|
.BR "-F"
|
|
Disable automatic fsync() call after each transaction.
|
|
This option improves performance, but an operating system crash
|
|
while a transaction is in progress will probably cause data loss.
|
|
.TP
|
|
.BR "-P" " filedes"
|
|
.IR "filedes"
|
|
specifies the file descriptor that corresponds to the socket (port) on
|
|
which to communicate to the frontend process. This option is
|
|
.BR not
|
|
useful for interactive use.
|
|
.TP
|
|
.BR "-Q"
|
|
Specifies \*(lqquiet\*(rq mode.
|
|
.TP
|
|
.BR "-S"
|
|
Specifies the amount of memory to be used by internal sorts before using
|
|
disk files for sorting. This value is specified in 1k bytes, and
|
|
defaults to 512.
|
|
.TP
|
|
.BR "-e"
|
|
The
|
|
.IR "-e"
|
|
option controls how dates are input to and output from the database.
|
|
.IP
|
|
If the
|
|
.IR "-e"
|
|
option is supplied, then all dates passed to and from the frontend
|
|
processes will be assumed to be in
|
|
.IR "European"
|
|
format ie.
|
|
.IR "DD-MM-YYYY"
|
|
otherwise dates are input and output in
|
|
.IR "American"
|
|
format ie.
|
|
.IR "MM-DD-YYYY"
|
|
.TP
|
|
.BR "-d" " debug_level"
|
|
Turns on debugging at the numeric level
|
|
.IR "debug_level" .
|
|
Turning on debugging will cause query, parse trees, and query plans to
|
|
be displayed.
|
|
.TP
|
|
.BR "-o" " output_file"
|
|
Sends all debugging and error output to
|
|
.IR output_file .
|
|
If the backend is running under the
|
|
.IR postmaster ,
|
|
error messages are still sent to the frontend process as well as to
|
|
.IR output_file ,
|
|
but debugging output is sent to the controlling tty of the
|
|
.IR postmaster
|
|
(since only one file descriptor can be sent to an actual file).
|
|
.TP
|
|
.BR "-s"
|
|
Print time information and other statistics at the end of each query.
|
|
This is useful for benchmarking or for use in tuning the number of
|
|
buffers.
|
|
.SH "DEPRECATED COMMAND OPTIONS"
|
|
There are several other options that may be specified, used mainly
|
|
for debugging purposes. These are listed here only for the use by
|
|
Postgres system developers.
|
|
.BR "Use of any of these options is highly discouraged" .
|
|
Furthermore, any of these options may disappear or change at any time.
|
|
.TP
|
|
.BR "-A" "n|r|b|Q\fIn\fP|X\fIn\fP"
|
|
.IP
|
|
This option generates a tremendous amount of output.
|
|
.TP
|
|
.BR "-L"
|
|
Turns off the locking system.
|
|
.TP
|
|
.BR "-N"
|
|
Disables use of newline as a query delimiter.
|
|
.TP
|
|
.BR "-b"
|
|
Enables generation of bushy query plan trees (as opposed to left-deep
|
|
query plans trees). These query plans are not intended for actual
|
|
execution; in addition, this flag often causes Postgres to run out of
|
|
memory.
|
|
.TP
|
|
.BR "-f"
|
|
Forbids the use of particular scan and join methods:
|
|
.IR s " and " i
|
|
disable sequential and index scans respectively, while
|
|
.IR n ", " m " and " h
|
|
disable nested-loop, merge and hash joins respectively.
|
|
This is another feature that may not necessarily produce executable
|
|
plans.
|
|
.TP
|
|
.BR "-p"
|
|
Indicates to the backend server that it has been started by a
|
|
.IR postmaster
|
|
and make different assumptions about buffer pool management, file
|
|
descriptors, etc.
|
|
.TP
|
|
.BR "-t" "pa[rser]|pl[anner]|e[xecutor]"
|
|
Print timing statistics for each query relating to each of the major
|
|
system modules. This option cannot be used with
|
|
.BR "-s" .
|
|
.SH "SEE ALSO"
|
|
ipcclean(1),
|
|
psql(1),
|
|
postmaster(1).
|
|
.SH "DIAGNOSTICS"
|
|
Of the nigh-infinite number of error messages you may see when you
|
|
execute the backend server directly, the most common will probably be:
|
|
.TP
|
|
.BR "semget: No space left on device"
|
|
If you see this message, you should run the
|
|
.IR ipcclean
|
|
command. After doing this, try starting
|
|
.IR postgres
|
|
again. If this still doesn't work, you probably need to configure
|
|
your kernel for shared memory and semaphores as described in the
|
|
installation notes.
|