11.\" This is -*-nroff-*-
22.\" XXX standard disclaimer belongs here....
3- .\" $Header: /cvsroot/pgsql/src/man/Attic/postmaster.1,v 1.15 1999/02/22 05:26:58 momjian Exp $
4- .TH POSTMASTER UNIX02/20 /99 PostgreSQL PostgreSQL
3+ .\" $Header: /cvsroot/pgsql/src/man/Attic/postmaster.1,v 1.16 1999/05/19 23:30:43 tgl Exp $
4+ .TH POSTMASTER UNIX05/19 /99 PostgreSQL PostgreSQL
55.SH "NAME"
66postmaster - run the Postgres postmaster
77.SH "SYNOPSIS"
@@ -49,12 +49,17 @@ port]
4949The
5050.IR " postmaster"
5151manages the communication between frontend and backend processes, as
52- well as allocating the shared buffer pool andsemaphores (on machines
53- without a test-and-set instruction). The
52+ well as allocating the shared buffer pool andSysV semaphores
53+ (on machines without a test-and-set instruction). The
5454.IR postmaster
5555does not itself interact with the user and should be started as a
5656background process.
57- .BR " Only one postmaster should be run on a machine."
57+ .PP
58+ .BR " Only one postmaster should be running at a time in a given
59+ Postgres installation."
60+ Here, an installation means a database directory and postmaster port number.
61+ You can run more than one postmaster on a machine only if each one has a
62+ separate directory and port number.
5863.PP
5964The
6065.IR " postmaster"
@@ -65,12 +70,13 @@ understands the following command-line options:
6570is the number of shared-memory buffers for the
6671.IR " postmaster"
6772to allocate and manage for the backend server processes that it
68- starts. This value defaults to 64, and each buffer is 8k bytes.
73+ starts. This value defaults to 64 buffers, where each buffer is 8k bytes
74+ (or whatever BLCKSZ is set to in config.h).
6975.TP
7076.BR " -D" " data_dir"
7177Specifies the directory to use as the root of the tree of database
72- directories.This directory uses thevalue of the environment
73- variable
78+ directories.If -D is not given, thedefault data directory name is
79+ the value of the environment variable
7480.SM PGDATA.
7581If
7682.SM PGDATA
@@ -86,7 +92,7 @@ is the maximum number of backend server processes that this postmaster
8692is allowed to start. In the stock configuration, this value defaults
8793to 64, and can be set as high as 1024 if your system will support that
8894many processes. Both the default and upper limit values can be altered
89- when building Postgres.
95+ when building Postgres (see src/include/config.h) .
9096.TP
9197.BR " -S"
9298Specifies that the
@@ -113,7 +119,8 @@ authentication, use
113119to deny any unauthenticated
114120connections, use
115121.BR " -a nounauth .
116- This option no longer has any effect.
122+ This option no longer has any effect! The pg_hba.conf configuration
123+ file now controls authentication.
117124.TP
118125.BR " -b" " backend_pathname"
119126.IR " backend_pathname"
@@ -131,6 +138,9 @@ was invoked. If no pathname was specified, then the
131138.SM PATH
132139environment variable is searched for an executable named
133140\*( lq postgres\*( rq ).
141+ This option is also obsolete, since the postmaster and backend are now
142+ a single executable --- the postmaster forks a backend but does not do
143+ an exec.
134144.TP
135145.BR " -d" " [debug_level]"
136146The optional argument
@@ -201,9 +211,12 @@ Specifies the TCP/IP port or local Unix domain socket file extension
201211on which the
202212.IR postmaster
203213is to listen for connections from frontend applications. Defaults to
204- 5432, or the value of the
214+ the value of the
215+ .SM PGPORT
216+ environment variable, or if
205217.SM PGPORT
206- environment variable (if set). If you specify a port other than the
218+ is not set, then the default value established when Postgres was
219+ compiled (normally 5432). If you specify a port other than the
207220default port then all frontend application users must specify the same
208221port (using command-line options or
209222.SM PGPORT \c
@@ -253,7 +266,7 @@ simplest and most common way to start the
253266.nf
254267
255268# start with specific port and executable name
256- nohup postmaster -p -b /usr/postgres/bin/postgres &
269+ nohup postmaster -p1234 -b /usr/postgres/bin/postgres &
257270
258271.fi
259272This command will start up a
@@ -281,7 +294,7 @@ postgres(1),
281294.BR " FindBackend: could not find a backend to execute..."
282295If you see this message, you do not have the
283296.IR " postgres"
284- executable in your path. Add thedirectoy in which postgres resides to
297+ executable in your path. Add thedirectory in which postgres resides to
285298your path.
286299.TP
287300.BR " semget: No space left on device"
@@ -293,10 +306,11 @@ again. If this still doesn't work, you probably need to configure
293306your kernel for shared memory and semaphores as described in the
294307installation notes. If you run multiple
295308.IR postmaster s
296- on a single host, or have reduced the shared memory and semaphore
297- parameters from the defaults in the generic kernel, you may have to
298- go back and increase the shared memory and semaphores configured
299- into your kernel.
309+ on a single host, or have a kernel with particularly small shared memory
310+ and/or semaphore limits, you may have to reconfigure your kernel to increase
311+ its shared memory or semaphore parameters. (You may be able to postpone
312+ reconfiguring your kernel by reducing -B to reduce Postgres' shared memory
313+ consumption, or by reducing -N to reduce Postgres' semaphore consumption.)
300314.TP
301315.BR " StreamServerPort: cannot bind to port"
302316If you see this message, you should be certain that there is no other