postgres - Run a PostgreSQL single-user backend


SYNOPSIS

       postgres [ -A  { 0 | 1 } ] [ -B nbuffers ] [ -c name=value
       ] [ -d debug-level ] [ -D datadir ] [ -e ] [ -E ] [ -f { s
       |  i  | t | n | m | h } ] [ -F ] [ -i ] [ -L ] [ -N ] [ -o
       file-name ] [ -O ] [ -P ] [ -s | -t { pa | pl | ex }  ]  [
       -S sort-mem ] [ -W seconds ] database

       postgres [ -A  { 0 | 1 } ] [ -B nbuffers ] [ -c name=value
       ] [ -d debug-level ] [ -D datadir ] [ -e ] [ -f { s | i  |
       t  | n | m | h } ] [ -F ] [ -i ] [ -L ] [ -o file-name ] [
       -O ] [ -p database ] [ -P ] [ -s | -t { pa | pl | ex } ] [
       -S sort-mem ] [ -v protocol-version ] [ -W seconds ]


DESCRIPTION

       The  postgres  executable  is the actual PostgreSQL server
       process that processes queries. It is normally not  called
       directly;  instead  a  postmaster(1)  multi-user server is
       started.

       The second form above is how postgres is  invoked  by  the
       postmaster(1)  (only  conceptually,  since both postmaster
       and postgres are in fact the same program); it should  not
       be  invoked  directly this way. The first form invokes the
       server directly in interactive mode. The primary  use  for
       this mode is for bootstrapping by initdb(1).

       When  invoked in interactive mode from the shell, the user
       can enter queries and the results will be printed  to  the
       screen,  but  in a form that is more useful for developers
       than end users. But note that running a single-user  back­
       end  is  not truly suitable for debugging the server since
       no realistic inter-process communication and locking  will
       happen.

       When  running  a stand-alone backend the session user name
       will automatically be set to the  current  effective  Unix
       user name. If that user does not exist the server will not
       start.

   OPTIONS
       When postgres is started by a postmaster(1) then it inher­
       its all options set by the latter. Additionally, postgres-
       specific options can be passed from  the  postmaster  with
       the -o switch.

       You can avoid having to type these options by setting up a
       configuration file.  See  the  Administrator's  Guide  for
       details. Some (safe) options can also be set from the con­
       necting client in an application-dependent way.  For exam­
       ple,  if  the  environment variable PGOPTIONS is set, then
       libpq-based clients will pass that string to  the  server,


   GENERAL PURPOSE
       The options -A, -B, -c, -d, -D, and -F have the same mean­
       ing as with the postmaster(1).

       -e     Sets  the default date style to ``European'', which
              means that the ``day before  month''  (rather  than
              month before day) rule is used to interpret ambigu­
              ous date input, and that the day is printed  before
              the  month  in certain date output formats. See the
              PostgreSQL User's Guide for more information.

       -o file-name
              Sends all debugging and error output to OutputFile.
              If  the  backend  is  running under the postmaster,
              error messages are still sent to the frontend  pro­
              cess as well as to OutputFile, but debugging output
              is sent to the controlling tty  of  the  postmaster
              (since  only  one file descriptor can be sent to an
              actual file).

       -P     Ignore system indexes to scan/update system tuples.
              The   REINDEX  command  for  system  tables/indexes
              requires this option to be used.

       -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.

       -S sort-mem
              Specifies the amount of memory to be used by inter­
              nal  sorts and hashes before resorting to temporary
              disk files. The value is  specified  in  kilobytes,
              and defaults to 512 kilobytes. Note that for a com­
              plex query, several sorts and/or  hashes  might  be
              running  in  parallel, and each one will be allowed
              to use as much  as  sort-mem  kilobytes  before  it
              starts to put data into temporary files.

   OPTIONS FOR STAND-ALONE MODE
       database
              Specifies  the name of the database to be accessed.
              If it is omitted it defaults to the user name.

       -E     Echo all queries.

       -N     Disables use of newline as a query delimiter.

   SEMI-INTERNAL OPTIONS
       There are several other options  that  may  be  specified,
       used  mainly for debugging purposes. These are listed here
       only for the use by PostgreSQL system developers.  Use  of
       any  of  these options is highly discouraged. Furthermore,

       release without notice.

       -f { s | i | m | n | h }
              Forbids  the  use of particular scan and join meth­
              ods: s and i disable  sequential  and  index  scans
              respectively,  while  n,  m,  and h disable nested-
              loop, merge and hash joins respectively.

              Note:  Neither  sequential  scans  nor  nested-loop
              joins  can  be disabled completely; the -fs and -fn
              options simply discourage the optimizer from  using
              those plan types if it has any other alternative.

       -i     Prevents  query execution, but shows the plan tree.

       -L     Turns off the locking system.

       -O     Allows the structure of system tables to  be  modi­
              fied. This is used by initdb.

       -p database
              Indicates  that  this  server has been started by a
              postmaster and makes  different  assumptions  about
              buffer pool management, file descriptors, etc.

       -t pa[rser] | pl[anner] | e[xecutor]
              Print  timing statistics for each query relating to
              each of the major system modules. This option  can­
              not be used together with the -s option.

       -v protocol
              Specifies  the version number of the frontend/back­
              end protocol to be used for  this  particular  ses­
              sion.

       -W seconds
              As  soon as this option is encountered, the process
              sleeps for the specified amount  of  seconds.  This
              gives  developers  time to attach a debugger to the
              backend process.


SEE ALSO

       initdb(1), ipcclean(1), postmaster(1)


Man(1) output converted with man2html