Re: [HACKERS] pg_ctl man page - Mailing list pgsql-hackers
From | Tatsuo Ishii |
---|---|
Subject | Re: [HACKERS] pg_ctl man page |
Date | |
Msg-id | 20000207134947O.t-ishii@sra.co.jp Whole thread Raw |
In response to | pg_ctl man page (Tatsuo Ishii <t-ishii@sra.co.jp>) |
Responses |
Re: [HACKERS] pg_ctl man page
|
List | pgsql-hackers |
I got grammer corrections from Ed Loehr. Also, I modified some option flag styles according to Thomas's suggestion. Thanks for those who gave me suggestions. Thomas, I have changed -m <opts> style to -smart, -fast... style. I hope this was what you meant. Also, please note that I still stick with smart/fast/immediate since I have been waiting for Vadim's opinion... Tatsuo Ishii ------------------------------------------------------------------- NAME pg_ctl - starts/stops/restarts postmaster SYNOPSIS pg_ctl [-w][-D database_dir][-p path_to_postmaster][-o "postmaster_opts"] start pg_ctl [-w][-D database_dir][-smart|-fast|-immediate] stop pg_ctl [-w][-D database_dir][-smart|-fast|-immediate][-o "postmaster_opts"] restart pg_ctl [-D database_dir] status DESCRIPTION pg_ctl is a utility for starting, stopping or restarting postmaster. Starting postmaster To start postmaster: pg_ctl start If -w is supplied, pg_ctl waits for the database server comes up, by watching for creation of the pid file (PGDATA/postmaster.pid), for up to 60 seconds. Parameters to invoke postmaster are taken from following sources: Path to postmaster: found in the command search path Database directory: PGDATA environment variable Other parameters: PGDATA/postmaster.opts.default postmaster.opts.default contains parameters for postmaster. With a default installation, the "-S" option is enabled. So "pg_ctl start" implies: postmaster -S Note that postmaster.opts.default is installed by initdb from lib/postmaster.opts.default.sample under the PostgreSQL installation directory (lib/postmaster.opts.default.sample is copied from src/bin/pg_ctl/postmaster.opts.default.sample while installing PostgreSQL). To override default parameters you can use -D, -p and -o options. -D database_dirspecifies the database directory -p path_to_postmasterspecifies the path to postmaster -o "postmaster_opts"specifies any parameters for postmaster Examples: # blocks until postmaster comes up pg_ctl -w start # specifies postmaster path pg_ctl -p /usr/local/pgsq/bin/postmaster start # uses port 5433 and disables fsync pg_ctl -o "-o -F -p 5433" start Stopping postmaster pg_ctl stop stops postmaster. There are several options for the stopping mode. -wwaits for postmaster to shut down -smart|-fast|-immediate specifies the shutdown mode. smart mode waits for all the clients to logout. This is thedefault. fast mode sends SIGTERM to the backends, that means active transactions get rolled back. immediatemode sends SIGUSR1 to the backends and lets them abort. In this case, database recovery will be neccessaryon the next startup. Restarting postmaster This is almost equivalent to stopping postmaster then starting it again except that the parameters for postmaster used before stopping it would be used too. This is done by saving them in PGDATA/postmaster.opts file. -w, -D, -smart, -fast, -immediate and -o can also be used in the restarting mode and they have same meanings as described above. Examples: # restarts postmaster in the simplest form pg_ctl restart # restarts postmaster, waiting for it to shut down and to come up pg_ctl -w restart # uses port 5433 and disables fsync next time pg_ctl -o "-o -F -p 5433" restart Getting status from postmaster To get status information from postmaster: pg_ctl status Following is sample outputs from pg_ctl. pg_ctl: postmaster is running (pid: 13718) options are: /usr/local/src/pgsql/current/bin/postmaster -p 5433 -D /usr/local/src/pgsql/current/data -B 64 -b /usr/local/src/pgsql/current/bin/postgres -N 32 -o '-F' ************
pgsql-hackers by date: