⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pg_ctl-ref.sgml

📁 PostgreSQL7.4.6 for Linux
💻 SGML
字号:
<!--$Header: /cvsroot/pgsql/doc/src/sgml/ref/pg_ctl-ref.sgml,v 1.24 2003/11/01 01:56:29 petere Exp $PostgreSQL documentation--><refentry id="app-pg-ctl"> <refmeta>  <refentrytitle id="app-pg-ctl-title"><application>pg_ctl</application></refentrytitle>  <manvolnum>1</manvolnum>  <refmiscinfo>Application</refmiscinfo> </refmeta> <refnamediv>  <refname>pg_ctl</refname>  <refpurpose>start, stop, or restart a <productname>PostgreSQL</productname> server</refpurpose> </refnamediv> <indexterm zone="app-pg-ctl">  <primary>pg_ctl</primary> </indexterm> <refsynopsisdiv>  <cmdsynopsis>   <command>pg_ctl</command>   <arg choice="plain">start</arg>   <arg>-w</arg>   <arg>-s</arg>   <arg>-D <replaceable>datadir</replaceable></arg>   <arg>-l <replaceable>filename</replaceable></arg>   <arg>-o <replaceable>options</replaceable></arg>   <arg>-p <replaceable>path</replaceable></arg>   <sbr>   <command>pg_ctl</command>   <arg choice="plain">stop</arg>   <arg>-W</arg>   <arg>-s</arg>   <arg>-D <replaceable>datadir</replaceable></arg>   <arg>-m     <group choice="plain">       <arg>s[mart]</arg>       <arg>f[ast]</arg>       <arg>i[mmediate]</arg>     </group>   </arg>   <sbr>   <command>pg_ctl</command>   <arg choice="plain">restart</arg>   <arg>-w</arg>   <arg>-s</arg>   <arg>-D <replaceable>datadir</replaceable></arg>   <arg>-m     <group choice="plain">       <arg>s[mart]</arg>       <arg>f[ast]</arg>       <arg>i[mmediate]</arg>     </group>   </arg>   <arg>-o <replaceable>options</replaceable></arg>   <sbr>   <command>pg_ctl</command>   <arg choice="plain">reload</arg>   <arg>-s</arg>   <arg>-D <replaceable>datadir</replaceable></arg>   <sbr>   <command>pg_ctl</command>   <arg choice="plain">status</arg>   <arg>-D <replaceable>datadir</replaceable></arg>  </cmdsynopsis> </refsynopsisdiv> <refsect1 id="app-pg-ctl-description">  <title>Description</title>  <para>   <application>pg_ctl</application> is a utility for starting,   stopping, or restarting the <productname>PostgreSQL</productname>   backend server (<xref linkend="app-postmaster">), or displaying the   status of a running server.  Although the server can be started   manually, <application>pg_ctl</application> encapsulates tasks such   as redirecting log output and properly detaching from the terminal   and process group. It also provides convenient options for   controlled shutdown.  </para>  <para>   In <option>start</option> mode, a new server is launched.  The   server is started in the background, and standard input is attached to   <filename>/dev/null</filename>.  The standard output and standard   error are either appended to a log file (if the <option>-l</option>   option is used), or redirected to  <application>pg_ctl</application>'s    standard output (not standard error).  If no log file is chosen, the    standard output of <application>pg_ctl</application> should be redirected    to a file or piped to another process, for example a log rotating program,   otherwise <command>postmaster</command> will write its output to the controlling   terminal (from the background) and will not leave the shell's   process group.  </para>  <para>   In <option>stop</option> mode, the server that is running in   the specified data directory is shut down.  Three different   shutdown methods can be selected with the <option>-m</option>   option: <quote>Smart</quote> mode waits for all the clients to   disconnect.  This is the default.  <quote>Fast</quote> mode does   not wait for clients to disconnect.  All active transactions are   rolled back and clients are forcibly disconnected, then the   server is shut down.  <quote>Immediate</quote> mode will abort   all server processes without a clean shutdown.  This will lead to    a recovery run on restart.  </para>  <para>   <option>restart</option> mode effectively executes a stop followed   by a start.  This allows changing the <command>postmaster</command>   command-line options.  </para>  <para>   <option>reload</option> mode simply sends the   <command>postmaster</command> process a <systemitem>SIGHUP</>   signal, causing it to reread its configuration files   (<filename>postgresql.conf</filename>,   <filename>pg_hba.conf</filename>, etc.).  This allows changing of   configuration-file options that do not require a complete restart   to take effect.  </para>  <para>   <option>status</option> mode checks whether a server is running in   the specified data directory. If it is, the <acronym>PID</acronym>   and the command line options that were used to invoke it are   displayed.  </para> </refsect1> <refsect1 id="app-pg-ctl-options">  <title>Options</title>  <para>    <variablelist>     <varlistentry>      <term><option>-D <replaceable class="parameter">datadir</replaceable></option></term>      <listitem>       <para>	Specifies the file system location of the database files.  If	this is omitted, the environment variable	<envar>PGDATA</envar> is used.       </para>      </listitem>     </varlistentry>     <varlistentry>      <term><option>-l <replaceable class="parameter">filename</replaceable></option></term>      <listitem>       <para>        Append the server log output to        <replaceable>filename</replaceable>.  If the file does not        exist, it is created.  The <systemitem>umask</> is set to 077, so access to        the log file from other users is disallowed by default.       </para>      </listitem>     </varlistentry>     <varlistentry>      <term><option>-m <replaceable class="parameter">mode</replaceable></option></term>      <listitem>       <para>	Specifies the shutdown mode.  <replaceable>mode</replaceable>	may be <literal>smart</literal>, <literal>fast</literal>, or	<literal>immediate</literal>, or the first letter of one of	these three.       </para>      </listitem>     </varlistentry>     <varlistentry>      <term><option>-o <replaceable class="parameter">options</replaceable></option></term>      <listitem>       <para>        Specifies options to be passed directly to the        <command>postmaster</command> command.       </para>       <para>	The options are usually surrounded by single or double	quotes to ensure that they are passed through as a group.       </para>      </listitem>     </varlistentry>     <varlistentry>      <term><option>-p <replaceable class="parameter">path</replaceable></option></term>      <listitem>       <para>	Specifies the location of the <filename>postmaster</filename>	executable.  By default the <filename>postmaster</filename> executable is taken from the same	directory as <command>pg_ctl</command>, or failing that, the hard-wired	installation directory.  It is not necessary to use this	option unless you are doing something unusual and get errors	that the <filename>postmaster</filename> executable was not found.       </para>      </listitem>     </varlistentry>     <varlistentry>      <term><option>-s</option></term>      <listitem>       <para>        Only print errors, no informational messages.       </para>      </listitem>     </varlistentry>     <varlistentry>      <term><option>-w</option></term>      <listitem>       <para>	Wait for the start or shutdown to complete.  Times out after	60 seconds.  This is the default for shutdowns. A successful         shutdown is indicated by removal of the <acronym>PID</acronym>         file. For starting up, a successful <command>psql -l</command>         indicates success. <command>pg_ctl</command> will attempt to         use the proper port for <application>psql</>. If the environment variable         <envar>PGPORT</envar> exists, that is used. Otherwise, it will see if a port         has been set in the <filename>postgresql.conf</filename> file.         If neither of those is used, it will use the default port that         <productname>PostgreSQL</productname> was compiled with         (5432 by default).       </para>      </listitem>     </varlistentry>     <varlistentry>      <term><option>-W</option></term>      <listitem>       <para>        Do not wait for start or shutdown to complete.  This is the        default for starts and restarts.       </para>      </listitem>     </varlistentry>    </variablelist>   </para> </refsect1> <refsect1>  <title>Environment</title>  <variablelist>   <varlistentry>    <term><envar>PGDATA</envar></term>    <listitem>     <para>      Default data directory location.     </para>    </listitem>   </varlistentry>   <varlistentry>    <term><envar>PGPORT</envar></term>    <listitem>     <para>      Default port for <xref linkend="app-psql"> (used by the -w option).     </para>    </listitem>   </varlistentry>  </variablelist>  <para>   For others, see <xref linkend="app-postmaster">.  </para> </refsect1> <refsect1>  <title>Files</title>  <variablelist>   <varlistentry>    <term><filename>postmaster.pid</filename></term>    <listitem>     <para>      The existence of this file in the data directory is used to help      <application>pg_ctl</application> determine if the server is      currently running or not.     </para>    </listitem>   </varlistentry>   <varlistentry>    <term><filename>postmaster.opts.default</filename></term>    <listitem>     <para>      If this file exists in the data directory,      <application>pg_ctl</application> (in <option>start</option>      mode) will pass the contents of the file as options to the      <command>postmaster</command> command, unless overridden by the      <option>-o</option> option.     </para>    </listitem>   </varlistentry>   <varlistentry>    <term><filename>postmaster.opts</filename></term>    <listitem>     <para>If this file exists in the data directory,      <application>pg_ctl</application> (in <option>restart</option> mode)       will pass the contents of the file as options to the       <application>postmaster</application>, unless overridden       by the <option>-o</option> option. The contents of this file       are also displayed in <option>status</option> mode.     </para>    </listitem>   </varlistentry>   <varlistentry>    <term><filename>postgresql.conf</filename></term>    <listitem>     <para>      This file, located in the data directory, is parsed to find the      proper port to use with <application>psql</application> when the      <option>-w</option> is given in <option>start</option> mode.     </para>    </listitem>   </varlistentry>  </variablelist> </refsect1> <refsect1>  <title>Notes</title>  <para>   Waiting for complete start is not a well-defined operation and may   fail if access control is set up so that a local client cannot   connect without manual interaction (e.g., password authentication).  </para> </refsect1> <refsect1 id="R1-APP-PGCTL-2">  <title>Examples</title>  <refsect2 id="R2-APP-PGCTL-3">   <title>Starting the Server</title>   <para>    To start up a server:<screen><prompt>$</prompt> <userinput>pg_ctl start</userinput></screen>   </para>   <para>    An example of starting the server, blocking until the server has    come up is:<screen><prompt>$</prompt> <userinput>pg_ctl -w start</userinput></screen>   </para>   <para>    For a server using port 5433, and    running without <function>fsync</function>, use:<screen><prompt>$</prompt> <userinput>pg_ctl -o "-F -p 5433" start</userinput></screen>   </para>  </refsect2>  <refsect2 id="R2-APP-PGCTL-4">   <title>Stopping the Server</title>   <para><screen><prompt>$</prompt> <userinput>pg_ctl stop</userinput></screen>    stops the server. Using the <option>-m</option> switch allows one    to control <emphasis>how</emphasis> the backend shuts down.   </para>  </refsect2>  <refsect2 id="R2-APP-PGCTL-5">   <title>Restarting the Server</title>   <para>    Restarting the server is almost equivalent to stopping the    server and starting it again    except that <command>pg_ctl</command> saves and reuses the command line options that    were passed to the previously running instance.  To restart    the server in the simplest form, use:<screen><prompt>$</prompt> <userinput>pg_ctl restart</userinput></screen>   </para>   <para>    To restart server,    waiting for it to shut down and to come up:<screen><prompt>$</prompt> <userinput>pg_ctl -w restart</userinput></screen>   </para>   <para>    To restart using port 5433 and disabling <function>fsync</> after restarting:<screen><prompt>$</prompt> <userinput>pg_ctl -o "-F -p 5433" restart</userinput></screen>   </para>  </refsect2>  <refsect2 id="R2-APP-PGCTL-6">   <title>Showing the Server Status</title>   <para>    Here is a sample status output from    <application>pg_ctl</application>:<screen><prompt>$</prompt> <userinput>pg_ctl status</userinput><computeroutput>pg_ctl: postmaster is running (pid: 13718)Command line was:/usr/local/pgsql/bin/postmaster '-D' '/usr/local/pgsql/data' '-p' '5433' '-B' '128'</computeroutput></screen>    This is the command line that would be invoked in restart mode.   </para>  </refsect2> </refsect1> <refsect1>  <title>See Also</title>  <para>   <xref linkend="app-postmaster">  </para> </refsect1></refentry><!-- Keep this comment at the end of the fileLocal variables:mode:sgmlsgml-omittag:nilsgml-shorttag:tsgml-minimize-attributes:nilsgml-always-quote-attributes:tsgml-indent-step:1sgml-indent-data:tsgml-parent-document:nilsgml-default-dtd-file:"../reference.ced"sgml-exposed-tags:nilsgml-local-catalogs:("/usr/lib/sgml/catalog")sgml-local-ecat-files:nilEnd:-->

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -