1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-30 11:03:19 +03:00

Allow configuration files to be placed outside the data directory.

Add new postgresql.conf variables to point to data, pg_hba.conf, and
pg_ident.conf files.

Needs more documentation.
This commit is contained in:
Bruce Momjian
2004-07-11 00:18:45 +00:00
parent b4a98c5fcc
commit 130f89e93f
10 changed files with 303 additions and 81 deletions

View File

@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/postmaster.sgml,v 1.50 2004/06/21 04:06:04 tgl Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/postmaster.sgml,v 1.51 2004/07/11 00:18:41 momjian Exp $
PostgreSQL documentation
-->
@ -67,15 +67,28 @@ PostgreSQL documentation
One <command>postmaster</command> always manages the data
from exactly one database cluster. A database cluster is a
collection of databases that is stored at a common file system
location. When the <command>postmaster</command> starts it needs to know the location
of the database cluster files (<quote>data area</quote>). This is
done with the <option>-D</option> invocation option or the
<envar>PGDATA</envar> environment variable; there is no default.
More than one <command>postmaster</command> process can run on a system at one time,
as long as they use different data areas and different
location. When the <command>postmaster</command> starts it needs
to know the location of the database cluster files (<quote>data
area</quote>).
More than one <command>postmaster</command> process can run on a system
at one time as long as they use different data areas and different
communication ports (see below). A data area is created with <xref
linkend="app-initdb">.
</para>
<para>
The <quote>data area</> is specified by the <option>-D</option> option
or the <envar>PGDATA</envar> environment variable; there is no default.
Typically, it points to a directory created by <application>
initdb</>. However, for administrative flexibility, you can
point to a directory containing only configuration files:
<filename>postgresql.conf</>, <filename>pg_hba.conf</>, and
<filename>pg_ident.conf</>. You can then set
<filename>postgresql.conf</>'s <varname>pgdata</> to point to the
data directory. You can also point just to the server configuration file
like <filename>postgresql.conf</> and set its variables to point to the
other configuration files and the data directory.
</para>
</refsect1>
<refsect1 id="app-postmaster-options">

View File

@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/runtime.sgml,v 1.268 2004/06/27 22:58:19 tgl Exp $
$PostgreSQL: pgsql/doc/src/sgml/runtime.sgml,v 1.269 2004/07/11 00:18:40 momjian Exp $
-->
<Chapter Id="runtime">
@ -563,6 +563,54 @@ SET ENABLE_SEQSCAN TO OFF;
any desired selection condition.
</para>
<sect2 id="runtime-config-configuration-files">
<title>Configuration Files</title>
<variablelist>
<varlistentry id="guc-pgdata" xreflabel="pgdata">
<term><varname>pgdata</varname> (<type>string</type>)</term>
<listitem>
<para>
Specifies the directory to use for data storage (everything except
configuration files).
</para>
</listitem>
</varlistentry>
<varlistentry id="guc-hba-conf" xreflabel="hba-conf">
<term><varname>hba_conf</varname> (<type>string</type>)</term>
<listitem>
<para>
Specifies the file name to use for configuration of host-based
authentication (HBA).
</para>
</listitem>
</varlistentry>
<varlistentry id="guc-ident-conf" xreflabel="ident-conf">
<term><varname>ident_conf</varname> (<type>string</type>)</term>
<listitem>
<para>
Specifies the file name to use for configuration of
<application>ident</> authentication.
</para>
</listitem>
</varlistentry>
<varlistentry id="external-pidfile" xreflabel="external-pidfile">
<term><varname>external_pidfile</varname> (<type>string</type>)</term>
<listitem>
<para>
Specifies the location of an additional <application>postmaster</>
process-id (PID) file for use by server administration programs.
</para>
</listitem>
</varlistentry>
</variablelist>
</sect2>
<sect2 id="runtime-config-connection">
<title>Connections and Authentication</title>