Commit d07454f5 authored by Peter Eisentraut's avatar Peter Eisentraut

Markup additions and spell check. (covers Admin Guide)

parent 84956e71
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v 2.12 2001/08/25 18:52:41 tgl Exp $ --> <!-- $Header: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v 2.13 2001/09/09 23:52:12 petere Exp $ -->
<chapter id="backup"> <chapter id="backup">
<title>Backup and Restore</title> <title>Backup and Restore</title>
...@@ -236,10 +236,10 @@ cat <replaceable class="parameter">filename</replaceable>.* | psql <replaceable ...@@ -236,10 +236,10 @@ cat <replaceable class="parameter">filename</replaceable>.* | psql <replaceable
<formalpara> <formalpara>
<title>Use the custom dump format (V7.1).</title> <title>Use the custom dump format (V7.1).</title>
<para> <para>
If PostgreSQL was built on a system with the zlib compression library If PostgreSQL was built on a system with the <application>zlib</> compression library
installed, the custom dump format will compress data as it writes it installed, the custom dump format will compress data as it writes it
to the output file. For large databases, this will produce similar dump to the output file. For large databases, this will produce similar dump
sizes to using gzip, but has the added advantage that the tables can be sizes to using <command>gzip</command>, but has the added advantage that the tables can be
restored selectively. The following command dumps a database using the restored selectively. The following command dumps a database using the
custom dump format: custom dump format:
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/charset.sgml,v 2.8 2001/05/03 21:38:44 momjian Exp $ --> <!-- $Header: /cvsroot/pgsql/doc/src/sgml/charset.sgml,v 2.9 2001/09/09 23:52:12 petere Exp $ -->
<chapter id="charset"> <chapter id="charset">
<title>Localization</> <title>Localization</>
...@@ -53,7 +53,7 @@ ...@@ -53,7 +53,7 @@
<firstterm>Locale</> support refers to an application respecting <firstterm>Locale</> support refers to an application respecting
cultural preferences regarding alphabets, sorting, number cultural preferences regarding alphabets, sorting, number
formatting, etc. <productname>PostgreSQL</> uses the standard ISO formatting, etc. <productname>PostgreSQL</> uses the standard ISO
C and POSIX-like locale facilities provided by the server operating C and <acronym>POSIX</acronym>-like locale facilities provided by the server operating
system. For additional information refer to the documentation of your system. For additional information refer to the documentation of your
system. system.
</para> </para>
...@@ -103,27 +103,27 @@ export LANG=sv_SE ...@@ -103,27 +103,27 @@ export LANG=sv_SE
<tgroup cols="2"> <tgroup cols="2">
<tbody> <tbody>
<row> <row>
<entry>LC_COLLATE</> <entry><envar>LC_COLLATE</></>
<entry>String sort order</> <entry>String sort order</>
</row> </row>
<row> <row>
<entry>LC_CTYPE</> <entry><envar>LC_CTYPE</></>
<entry>Character classification (What is a letter? The upper-case equivalent?)</> <entry>Character classification (What is a letter? The upper-case equivalent?)</>
</row> </row>
<row> <row>
<entry>LC_MESSAGES</> <entry><envar>LC_MESSAGES</></>
<entry>Language of messages</> <entry>Language of messages</>
</row> </row>
<row> <row>
<entry>LC_MONETARY</> <entry><envar>LC_MONETARY</></>
<entry>Formatting of currency amounts</> <entry>Formatting of currency amounts</>
</row> </row>
<row> <row>
<entry>LC_NUMERIC</> <entry><envar>LC_NUMERIC</></>
<entry>Formatting of numbers</> <entry>Formatting of numbers</>
</row> </row>
<row> <row>
<entry>LC_TIME</> <entry><envar>LC_TIME</></>
<entry>Formatting of dates and times</> <entry>Formatting of dates and times</>
</row> </row>
</tbody> </tbody>
...@@ -204,7 +204,7 @@ export LANG=sv_SE ...@@ -204,7 +204,7 @@ export LANG=sv_SE
<para> <para>
If locale support doesn't work in spite of the explanation above, If locale support doesn't work in spite of the explanation above,
check that the locale support in your operating system is okay. check that the locale support in your operating system is correctly configured.
To check whether a given locale is installed and functional you To check whether a given locale is installed and functional you
can use <application>Perl</>, for example. Perl has also support can use <application>Perl</>, for example. Perl has also support
for locales and if a locale is broken <command>perl -v</> will for locales and if a locale is broken <command>perl -v</> will
...@@ -226,9 +226,9 @@ perl: warning: Falling back to the standard locale ("C"). ...@@ -226,9 +226,9 @@ perl: warning: Falling back to the standard locale ("C").
<para> <para>
Check that your locale files are in the right location. Possible Check that your locale files are in the right location. Possible
locations include: <filename>/usr/lib/locale</filename> (Linux, locations include: <filename>/usr/lib/locale</filename> (<systemitem class="osname">Linux</>,
Solaris), <filename>/usr/share/locale</filename> (Linux), <systemitem class="osname">Solaris</>), <filename>/usr/share/locale</filename> (<systemitem class="osname">Linux</>),
<filename>/usr/lib/nls/loc</filename> (DUX 4.0). Check the locale <filename>/usr/lib/nls/loc</filename> (<systemitem class="osname">DUX 4.0</>). Check the locale
man page of your system if you are not sure. man page of your system if you are not sure.
</para> </para>
...@@ -258,8 +258,8 @@ perl: warning: Falling back to the standard locale ("C"). ...@@ -258,8 +258,8 @@ perl: warning: Falling back to the standard locale ("C").
<para> <para>
Multibyte (<acronym>MB</acronym>) support is intended to allow Multibyte (<acronym>MB</acronym>) support is intended to allow
<productname>Postgres</productname> to handle <productname>Postgres</productname> to handle
multiple-byte character sets such as EUC (Extended Unix Code), Unicode and multiple-byte character sets such as <acronym>EUC</> (Extended Unix Code), Unicode and
Mule internal code. With <acronym>MB</acronym> enabled you can use multi-byte Mule internal code. With <acronym>MB</acronym> enabled you can use multibyte
character sets in regular expressions (regexp), LIKE, and some character sets in regular expressions (regexp), LIKE, and some
other functions. The default other functions. The default
encoding system is selected while initializing your encoding system is selected while initializing your
...@@ -304,63 +304,63 @@ perl: warning: Falling back to the standard locale ("C"). ...@@ -304,63 +304,63 @@ perl: warning: Falling back to the standard locale ("C").
</thead> </thead>
<tbody> <tbody>
<row> <row>
<entry>SQL_ASCII</entry> <entry><literal>SQL_ASCII</literal></entry>
<entry>ASCII</entry> <entry><acronym>ASCII</acronym></entry>
</row> </row>
<row> <row>
<entry>EUC_JP</entry> <entry><literal>EUC_JP</literal></entry>
<entry>Japanese EUC</entry> <entry>Japanese <acronym>EUC</></entry>
</row> </row>
<row> <row>
<entry>EUC_CN</entry> <entry><literal>EUC_CN</literal></entry>
<entry>Chinese EUC</entry> <entry>Chinese <acronym>EUC</></entry>
</row> </row>
<row> <row>
<entry>EUC_KR</entry> <entry><literal>EUC_KR</literal></entry>
<entry>Korean EUC</entry> <entry>Korean <acronym>EUC</></entry>
</row> </row>
<row> <row>
<entry>EUC_TW</entry> <entry><literal>EUC_TW</literal></entry>
<entry>Taiwan EUC</entry> <entry>Taiwan <acronym>EUC</acronym></entry>
</row> </row>
<row> <row>
<entry>UNICODE</entry> <entry><literal>UNICODE</literal></entry>
<entry>Unicode(UTF-8)</entry> <entry>Unicode (<acronym>UTF</acronym>-8)</entry>
</row> </row>
<row> <row>
<entry>MULE_INTERNAL</entry> <entry><literal>MULE_INTERNAL</literal></entry>
<entry>Mule internal</entry> <entry>Mule internal</entry>
</row> </row>
<row> <row>
<entry>LATIN1</entry> <entry><literal>LATIN1</literal></entry>
<entry>ISO 8859-1 English and some European languages</entry> <entry>ISO 8859-1 English and some European languages</entry>
</row> </row>
<row> <row>
<entry>LATIN2</entry> <entry><literal>LATIN2</literal></entry>
<entry>ISO 8859-2 English and some European languages</entry> <entry>ISO 8859-2 English and some European languages</entry>
</row> </row>
<row> <row>
<entry>LATIN3</entry> <entry><literal>LATIN3</literal></entry>
<entry>ISO 8859-3 English and some European languages</entry> <entry>ISO 8859-3 English and some European languages</entry>
</row> </row>
<row> <row>
<entry>LATIN4</entry> <entry><literal>LATIN4</literal></entry>
<entry>ISO 8859-4 English and some European languages</entry> <entry>ISO 8859-4 English and some European languages</entry>
</row> </row>
<row> <row>
<entry>LATIN5</entry> <entry><literal>LATIN5</literal></entry>
<entry>ISO 8859-5 English and some European languages</entry> <entry>ISO 8859-5 English and some European languages</entry>
</row> </row>
<row> <row>
<entry>KOI8</entry> <entry><literal>KOI8</literal></entry>
<entry>KOI8-R(U)</entry> <entry><acronym>KOI</acronym>8-R(U)</entry>
</row> </row>
<row> <row>
<entry>WIN</entry> <entry><literal>WIN</literal></entry>
<entry>Windows CP1251</entry> <entry>Windows CP1251</entry>
</row> </row>
<row> <row>
<entry>ALT</entry> <entry><literal>ALT</literal></entry>
<entry>Windows CP866</entry> <entry>Windows CP866</entry>
</row> </row>
</tbody> </tbody>
...@@ -395,7 +395,7 @@ perl: warning: Falling back to the standard locale ("C"). ...@@ -395,7 +395,7 @@ perl: warning: Falling back to the standard locale ("C").
% initdb -E EUC_JP % initdb -E EUC_JP
</programlisting> </programlisting>
sets the default encoding to EUC_JP (Extended Unix Code for Japanese). sets the default encoding to <literal>EUC_JP</literal> (Extended Unix Code for Japanese).
Note that you can use "--encoding" instead of "-E" if you prefer Note that you can use "--encoding" instead of "-E" if you prefer
to type longer option strings. to type longer option strings.
If no -E or --encoding option is given, the encoding If no -E or --encoding option is given, the encoding
...@@ -409,7 +409,7 @@ perl: warning: Falling back to the standard locale ("C"). ...@@ -409,7 +409,7 @@ perl: warning: Falling back to the standard locale ("C").
% createdb -E EUC_KR korean % createdb -E EUC_KR korean
</programlisting> </programlisting>
will create a database named "korean" with EUC_KR encoding. will create a database named <database>korean</database> with <literal>EUC_KR</literal> encoding.
Another way to accomplish this is to use a SQL command: Another way to accomplish this is to use a SQL command:
<programlisting> <programlisting>
...@@ -419,7 +419,7 @@ CREATE DATABASE korean WITH ENCODING = 'EUC_KR'; ...@@ -419,7 +419,7 @@ CREATE DATABASE korean WITH ENCODING = 'EUC_KR';
The encoding for a database is represented as an The encoding for a database is represented as an
<firstterm>encoding column</firstterm> in the <firstterm>encoding column</firstterm> in the
<literal>pg_database</literal> system catalog. <literal>pg_database</literal> system catalog.
You can see that by using -l or \l of psql You can see that by using <option>-l</option> or <command>\l</command> of <command>psql</command>
command. command.
<programlisting> <programlisting>
...@@ -462,26 +462,26 @@ $ psql -l ...@@ -462,26 +462,26 @@ $ psql -l
</thead> </thead>
<tbody> <tbody>
<row> <row>
<entry>EUC_JP</entry> <entry><literal>EUC_JP</literal></entry>
<entry>EUC_JP, SJIS</entry> <entry><literal>EUC_JP</literal>, <literal>SJIS</literal></entry>
</row> </row>
<row> <row>
<entry>EUC_TW</entry> <entry><literal>EUC_TW</literal></entry>
<entry>EUC_TW, BIG5</entry> <entry><literal>EUC_TW</literal>, <literal>BIG5</literal></entry>
</row> </row>
<row> <row>
<entry>LATIN2</entry> <entry><literal>LATIN2</literal></entry>
<entry>LATIN2, WIN1250</entry> <entry><literal>LATIN2</literal>, <literal>WIN1250</literal></entry>
</row> </row>
<row> <row>
<entry>LATIN5</entry> <entry><literal>LATIN5</literal></entry>
<entry>LATIN5, WIN, ALT</entry> <entry><literal>LATIN5</literal>, <literal>WIN</literal>, <literal>ALT</literal></entry>
</row> </row>
<row> <row>
<entry>MULE_INTERNAL</entry> <entry><literal>MULE_INTERNAL</literal></entry>
<entry>EUC_JP, SJIS, EUC_KR, EUC_CN, <entry><literal>EUC_JP</literal>, <literal>SJIS</literal>, <literal>EUC_KR</literal>, <literal>EUC_CN</literal>,
EUC_TW, BIG5, LATIN1 to LATIN5, <literal>EUC_TW</literal>, <literal>BIG5</literal>, <literal>LATIN1</literal> to <literal>LATIN5</literal>,
WIN, ALT, WIN1250</entry> <literal>WIN</literal>, <literal>ALT</literal>, <literal>WIN1250</literal></entry>
</row> </row>
</tbody> </tbody>
</tgroup> </tgroup>
...@@ -501,7 +501,7 @@ $ psql -l ...@@ -501,7 +501,7 @@ $ psql -l
<application>psql</application>. <application>psql</application>.
<command>\encoding</command> allows you to change frontend <command>\encoding</command> allows you to change frontend
encoding on the fly. For encoding on the fly. For
example, to change the encoding to SJIS, type: example, to change the encoding to <literal>SJIS</literal>, type:
<programlisting> <programlisting>
\encoding SJIS \encoding SJIS
...@@ -511,9 +511,9 @@ $ psql -l ...@@ -511,9 +511,9 @@ $ psql -l
<listitem> <listitem>
<para> <para>
Using libpq functions. Using <application>libpq</> functions.
<command>\encoding</command> actually calls <command>\encoding</command> actually calls
PQsetClientEncoding() for its purpose. <function>PQsetClientEncoding()</function> for its purpose.
<programlisting> <programlisting>
int PQsetClientEncoding(PGconn *<replaceable>conn</replaceable>, const char *<replaceable>encoding</replaceable>) int PQsetClientEncoding(PGconn *<replaceable>conn</replaceable>, const char *<replaceable>encoding</replaceable>)
...@@ -530,7 +530,7 @@ int PQclientEncoding(const PGconn *<replaceable>conn</replaceable>) ...@@ -530,7 +530,7 @@ int PQclientEncoding(const PGconn *<replaceable>conn</replaceable>)
</programlisting> </programlisting>
Note that it returns the "encoding id," not the encoding symbol string Note that it returns the "encoding id," not the encoding symbol string
such as "EUC_JP." To convert an encoding id to an encoding symbol, you such as <literal>EUC_JP</literal>. To convert an encoding id to an encoding symbol, you
can use: can use:
<programlisting> <programlisting>
...@@ -591,8 +591,8 @@ RESET CLIENT_ENCODING; ...@@ -591,8 +591,8 @@ RESET CLIENT_ENCODING;
encodings has been supported since PostgreSQL 7.1. encodings has been supported since PostgreSQL 7.1.
Because this requires huge conversion tables, it's not enabled by default. Because this requires huge conversion tables, it's not enabled by default.
To enable this feature, run configure with the To enable this feature, run configure with the
--enable-unicode-conversion option. Note that this requires <option>--enable-unicode-conversion</option> option. Note that this requires
the --enable-multibyte option also. the <option>--enable-multibyte</option> option also.
</para> </para>
</sect2> </sect2>
...@@ -600,9 +600,9 @@ RESET CLIENT_ENCODING; ...@@ -600,9 +600,9 @@ RESET CLIENT_ENCODING;
<title>What happens if the translation is not possible?</title> <title>What happens if the translation is not possible?</title>
<para> <para>
Suppose you choose EUC_JP for the backend, LATIN1 for the frontend, Suppose you choose <literal>EUC_JP</literal> for the backend, <literal>LATIN1</literal> for the frontend,
then some Japanese characters could not be translated into LATIN1. In then some Japanese characters could not be translated into <literal>LATIN1</literal>. In
this case, a letter that cannot be represented in the LATIN1 character set this case, a letter that cannot be represented in the <literal>LATIN1</literal> character set
would be transformed as: would be transformed as:
<programlisting> <programlisting>
...@@ -623,7 +623,7 @@ RESET CLIENT_ENCODING; ...@@ -623,7 +623,7 @@ RESET CLIENT_ENCODING;
<para> <para>
<ulink url="ftp://ftp.ora.com/pub/examples/nutshell/ujip/doc/cjk.inf"> <ulink url="ftp://ftp.ora.com/pub/examples/nutshell/ujip/doc/cjk.inf">
ftp://ftp.ora.com/pub/examples/nutshell/ujip/doc/cjk.inf</ulink> ftp://ftp.ora.com/pub/examples/nutshell/ujip/doc/cjk.inf</ulink>
Detailed explanations of EUC_JP, EUC_CN, EUC_KR, EUC_TW Detailed explanations of <literal>EUC_JP</literal>, <literal>EUC_CN</literal>, <literal>EUC_KR</literal>, <literal>EUC_TW</literal>
appear in section 3.2. appear in section 3.2.
</para> </para>
</listitem> </listitem>
...@@ -631,14 +631,14 @@ RESET CLIENT_ENCODING; ...@@ -631,14 +631,14 @@ RESET CLIENT_ENCODING;
<listitem> <listitem>
<para> <para>
Unicode: <ulink url="http://www.unicode.org/">http://www.unicode.org/</ulink> Unicode: <ulink url="http://www.unicode.org/">http://www.unicode.org/</ulink>
The homepage of UNICODE. The homepage of Unicode.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<literal>RFC 2044</literal> <literal>RFC 2044</literal>
UTF-8 is defined here. <literal>UTF</literal>-8 is defined here.
</para> </para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
...@@ -763,7 +763,8 @@ Sorry for my Eglish and C code, I'm not native :-) ...@@ -763,7 +763,8 @@ Sorry for my Eglish and C code, I'm not native :-)
<listitem> <listitem>
<para> <para>
Success depends on proper system locales. This has been tested Success depends on proper system locales. This has been tested
with RH6.0 and Slackware 3.6, with cs_CZ.iso8859-2 locale. with <systemitem class="osname">Red Hat 6.0</> and <systemitem
class="osname">Slackware 3.6</>, with <literal>cs_CZ.iso8859-2</literal> locale.
</para> </para>
</listitem> </listitem>
...@@ -777,7 +778,7 @@ Sorry for my Eglish and C code, I'm not native :-) ...@@ -777,7 +778,7 @@ Sorry for my Eglish and C code, I'm not native :-)
<listitem> <listitem>
<para> <para>
WIN1250 encoding is useable only for M$W ODBC clients. The WIN1250 encoding is usable only for Windows ODBC clients. The
characters are recoded on the fly, to be displayed and stored characters are recoded on the fly, to be displayed and stored
back properly. back properly.
</para> </para>
...@@ -864,7 +865,7 @@ LC_TIME=cs_CZ.ISO8859-2 ...@@ -864,7 +865,7 @@ LC_TIME=cs_CZ.ISO8859-2
<step> <step>
<para> <para>
Install ODBC driver for PgSQL on your M$ Windows machine. Install ODBC driver for <productname>PostgreSQL</productname> on your Windows machine.
</para> </para>
</step> </step>
...@@ -953,7 +954,7 @@ HostCharset <replaceable>host_spec</> <replaceable>host_charset</> ...@@ -953,7 +954,7 @@ HostCharset <replaceable>host_spec</> <replaceable>host_charset</>
cannot use different encodings on the same host at the same cannot use different encodings on the same host at the same
time. It is also inconvenient when you boot your client hosts into time. It is also inconvenient when you boot your client hosts into
multiple operating systems. Nevertheless, when these restrictions are multiple operating systems. Nevertheless, when these restrictions are
not limiting and you do not need multi-byte characters than it is a not limiting and you do not need multibyte characters than it is a
simple and effective solution. simple and effective solution.
</para> </para>
</sect1> </sect1>
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/client-auth.sgml,v 1.18 2001/09/06 03:23:38 momjian Exp $ --> <!-- $Header: /cvsroot/pgsql/doc/src/sgml/client-auth.sgml,v 1.19 2001/09/09 23:52:12 petere Exp $ -->
<chapter id="client-authentication"> <chapter id="client-authentication">
<title>Client Authentication</title> <title>Client Authentication</title>
...@@ -39,8 +39,8 @@ ...@@ -39,8 +39,8 @@
the server's machine, it makes sense to assign database user names the server's machine, it makes sense to assign database user names
that match their Unix user ids. However, a server that accepts remote that match their Unix user ids. However, a server that accepts remote
connections may have many users who have no local account, and in such connections may have many users who have no local account, and in such
cases there need be no connection between database usernames and Unix cases there need be no connection between database user names and Unix
usernames. user names.
</para> </para>
<sect1 id="pg-hba.conf"> <sect1 id="pg-hba.conf">
...@@ -52,8 +52,8 @@ ...@@ -52,8 +52,8 @@
<para> <para>
Client authentication is controlled by the file Client authentication is controlled by the file
<filename>pg_hba.conf</filename> in the $PGDATA directory, e.g., <filename>pg_hba.conf</filename> in the data directory, e.g.,
<filename>/usr/local/pgsql/data/pg_hba.conf</filename>. (HBA stands <filename>/usr/local/pgsql/data/pg_hba.conf</filename>. (<acronym>HBA</> stands
for host-based authentication.) A default <filename>pg_hba.conf</filename> for host-based authentication.) A default <filename>pg_hba.conf</filename>
file is installed when the file is installed when the
data area is initialized by <application>initdb</application>. data area is initialized by <application>initdb</application>.
...@@ -156,7 +156,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -156,7 +156,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term>trust</> <term><literal>trust</></term>
<listitem> <listitem>
<para> <para>
The connection is allowed unconditionally. This method allows The connection is allowed unconditionally. This method allows
...@@ -167,7 +167,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -167,7 +167,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>reject</> <term><literal>reject</></term>
<listitem> <listitem>
<para> <para>
The connection is rejected unconditionally. This is mostly The connection is rejected unconditionally. This is mostly
...@@ -177,7 +177,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -177,7 +177,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>password</> <term><literal>password</></term>
<listitem> <listitem>
<para> <para>
The client is required to supply a password with the connection The client is required to supply a password with the connection
...@@ -201,7 +201,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -201,7 +201,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>md5</> <term><literal>md5</></term>
<listitem> <listitem>
<para> <para>
Like the <literal>password</literal> method, but the password Like the <literal>password</literal> method, but the password
...@@ -215,7 +215,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -215,7 +215,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>crypt</> <term><literal>crypt</></term>
<listitem> <listitem>
<para> <para>
Like the <literal>md5</literal> method but uses older crypt Like the <literal>md5</literal> method but uses older crypt
...@@ -225,7 +225,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -225,7 +225,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>krb4</> <term><literal>krb4</></term>
<listitem> <listitem>
<para> <para>
Kerberos V4 is used to authenticate the user. This is only Kerberos V4 is used to authenticate the user. This is only
...@@ -235,7 +235,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -235,7 +235,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>krb5</term> <term><literal>krb5</></term>
<listitem> <listitem>
<para> <para>
Kerberos V5 is used to authenticate the user. This is only Kerberos V5 is used to authenticate the user. This is only
...@@ -245,7 +245,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -245,7 +245,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>ident</term> <term><literal>ident</></term>
<listitem> <listitem>
<para> <para>
The identity of the user as determined on login to the The identity of the user as determined on login to the
...@@ -258,15 +258,16 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -258,15 +258,16 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
server; ident authentication should never be used for remote hosts server; ident authentication should never be used for remote hosts
whose administrators are not trustworthy.) whose administrators are not trustworthy.)
On operating systems On operating systems
supporting SO_PEERCRED requests for Unix domain sockets, supporting <symbol>SO_PEERCRED</> requests for Unix domain sockets,
ident authentication is possible for local connections; ident authentication is possible for local connections;
the system is then asked for the connecting user's identity. the system is then asked for the connecting user's identity.
</para> </para>
<para> <para>
On systems without SO_PEERCRED requests, ident authentication On systems without <symbol>SO_PEERCRED</> requests, ident authentication
is only available for TCP/IP connections. As a workaround, is only available for TCP/IP connections. As a workaround,
it is possible to it is possible to
specify the localhost address 127.0.0.1 and make connections specify the <systemitem class="systemname">localhost</> address
<systemitem class="systemname">127.0.0.1</> and make connections
to this address. to this address.
</para> </para>
<para> <para>
...@@ -280,7 +281,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -280,7 +281,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>pam</term> <term><literal>pam</></term>
<listitem> <listitem>
<para> <para>
This authentication type operates similar to This authentication type operates similar to
...@@ -289,11 +290,11 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -289,11 +290,11 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
authentication mechanism. The <replaceable>authentication authentication mechanism. The <replaceable>authentication
option</replaceable> following the <literal>pam</> keyword option</replaceable> following the <literal>pam</> keyword
specifies the service name that will be passed to PAM. The specifies the service name that will be passed to PAM. The
default service name is <firstterm>postgresql</firstterm>. default service name is <literal>postgresql</literal>.
For more information about PAM, please read <ulink For more information about PAM, please read the <ulink
url="http://www.kernel.org/pub/linux/libs/pam/">Linux-PAM url="http://www.kernel.org/pub/linux/libs/pam/"><productname>Linux-PAM</productname>
Page</ulink> and <ulink Page</ulink> and/or the <ulink
url="http://www.sun.com/software/solaris/pam/">Solaris-PAM url="http://www.sun.com/software/solaris/pam/"><systemitem class="osname">Solaris</> PAM
Page</ulink>. Page</ulink>.
</para> </para>
</listitem> </listitem>
...@@ -316,19 +317,19 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable ...@@ -316,19 +317,19 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
</varlistentry> </varlistentry>
</variablelist> </variablelist>
The first record that matches a connection attempt's client IP address The first record that matches the client IP address and requested
and requested database name is used to do the authentication step. database name of a connection attempt is used to do the
There is no <quote>fall-through</> or <quote>backup</>: if authentication step. There is no <quote>fall-through</> or
one record is chosen and the <quote>backup</>: if one record is chosen and the authentication
authentication fails, the following records are not considered. If fails, the following records are not considered. If no record
no record matches, the access will be denied. matches, the access will be denied.
</para> </para>
<para> <para>
The <filename>pg_hba.conf</filename> file is loaded only on startup The <filename>pg_hba.conf</filename> file is loaded only on startup
and when the <application>postmaster</> receives a SIGHUP signal. If and when the <application>postmaster</> receives a <systemitem>SIGHUP</systemitem> signal. If
you edit the file on an active system, you will need to issue a you edit the file on an active system, you will need to issue a
SIGHUP to the <application>postmaster</> using <application>kill</> <systemitem>SIGHUP</systemitem> to the <application>postmaster</> using <application>kill</>
to make it re-read the file. to make it re-read the file.
</para> </para>
...@@ -511,7 +512,7 @@ host all 192.168.0.0 255.255.0.0 ident omicron ...@@ -511,7 +512,7 @@ host all 192.168.0.0 255.255.0.0 ident omicron
<prompt>kadmin% </><userinput>ank -randkey postgres/server.my.domain.org</> <prompt>kadmin% </><userinput>ank -randkey postgres/server.my.domain.org</>
<prompt>kadmin% </><userinput>ktadd -k krb5.keytab postgres/server.my.domain.org</> <prompt>kadmin% </><userinput>ktadd -k krb5.keytab postgres/server.my.domain.org</>
</screen> </screen>
Read the <productname>Kerberos</> documentation for defails. Read the <productname>Kerberos</> documentation for details.
</para> </para>
<para> <para>
...@@ -528,7 +529,7 @@ host all 192.168.0.0 255.255.0.0 ident omicron ...@@ -528,7 +529,7 @@ host all 192.168.0.0 255.255.0.0 ident omicron
<listitem> <listitem>
<para> <para>
The <productname>Postgres</> service is assumed to be have two The <productname>Postgres</> service is assumed to be have two
components, the service name and a hostname, canonicalized as components, the service name and a host name, canonicalized as
in Version 4 (i.e., with all domain suffixes removed). in Version 4 (i.e., with all domain suffixes removed).
</para> </para>
</listitem> </listitem>
...@@ -561,8 +562,8 @@ host all 192.168.0.0 255.255.0.0 ident omicron ...@@ -561,8 +562,8 @@ host all 192.168.0.0 255.255.0.0 ident omicron
</para> </para>
<para> <para>
If you use mod_auth_krb and mod_perl on your Apache web server, If you use <application>mod_auth_krb</application> and <application>mod_perl</application> on your <productname>Apache</productname> web server,
you can use AuthType KerberosV5SaveCredentials with a mod_perl you can use <literal>AuthType KerberosV5SaveCredentials</literal> with a <application>mod_perl</application>
script. This gives secure database access over the web, no extra script. This gives secure database access over the web, no extra
passwords required. passwords required.
</para> </para>
...@@ -610,7 +611,7 @@ host all 192.168.0.0 255.255.0.0 ident omicron ...@@ -610,7 +611,7 @@ host all 192.168.0.0 255.255.0.0 ident omicron
</para> </para>
<para> <para>
On systems supporting SO_PEERCRED requests for Unix-domain sockets, On systems supporting <symbol>SO_PEERCRED</symbol> requests for Unix-domain sockets,
ident authentication can also be applied to local connections. In this ident authentication can also be applied to local connections. In this
case, no security risk is added by using ident authentication; indeed case, no security risk is added by using ident authentication; indeed
it is a preferable choice for such a system. it is a preferable choice for such a system.
...@@ -654,12 +655,12 @@ host all 192.168.0.0 255.255.0.0 ident omicron ...@@ -654,12 +655,12 @@ host all 192.168.0.0 255.255.0.0 ident omicron
linkend="example-pg-hba.conf"> is shown in <xref linkend="example-pg-hba.conf"> is shown in <xref
linkend="example-pg-ident.conf">. In this example setup, anyone linkend="example-pg-ident.conf">. In this example setup, anyone
logged in to a machine on the 192.168 network that does not have logged in to a machine on the 192.168 network that does not have
the Unix user name bryanh, ann, or robert would not be granted access. the Unix user name <systemitem>bryanh</>, <systemitem>ann</>, or <systemitem>robert</> would not be granted access.
Unix user robert would only be allowed access when he tries to Unix user <systemitem>robert</> would only be allowed access when he tries to
connect as Postgres user <quote>bob</quote>, not as <quote>robert</quote> connect as Postgres user <systemitem>bob</>, not as <systemitem>robert</>
or anyone else. <quote>ann</quote> would only be allowed to connect as or anyone else. <systemitem>ann</> would only be allowed to connect as
<quote>ann</>. User bryanh would be allowed to connect as either <systemitem>ann</>. User <systemitem>bryanh</> would be allowed to connect as either
<quote>bryanh</> himself or as <quote>guest1</>. <systemitem>bryanh</> himself or as <systemitem>guest1</>.
</para> </para>
<example id="example-pg-ident.conf"> <example id="example-pg-ident.conf">
...@@ -726,7 +727,7 @@ FATAL 1: Database "testdb" does not exist in the system catalog. ...@@ -726,7 +727,7 @@ FATAL 1: Database "testdb" does not exist in the system catalog.
</para> </para>
<para> <para>
Note that the postmaster's stderr log may contain more information Note that the server log may contain more information
about an authentication failure than is reported to the client. about an authentication failure than is reported to the client.
If you are confused about the reason for a failure, check the log. If you are confused about the reason for a failure, check the log.
</para> </para>
......
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
Windows. The makefiles included in the source distribution are Windows. The makefiles included in the source distribution are
written for <productname>Microsoft Visual C++</productname> and will written for <productname>Microsoft Visual C++</productname> and will
probably not work with other systems. It should be possible to probably not work with other systems. It should be possible to
compile the libaries manually in other cases. compile the libraries manually in other cases.
</para> </para>
<tip> <tip>
...@@ -99,7 +99,7 @@ ...@@ -99,7 +99,7 @@
</para> </para>
<para> <para>
If you plan to do development using libpq on this machine, you will If you plan to do development using <application>libpq</application> on this machine, you will
have to add the <filename>src\include</filename> and have to add the <filename>src\include</filename> and
<filename>src\interfaces\libpq</filename> subdirectories of the <filename>src\interfaces\libpq</filename> subdirectories of the
source tree to the include path in your compilers settings. source tree to the include path in your compilers settings.
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.52 2001/09/06 02:56:32 momjian Exp $ --> <!-- $Header: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v 1.53 2001/09/09 23:52:12 petere Exp $ -->
<chapter id="installation"> <chapter id="installation">
<title><![%flattext-install-include[<productname>PostgreSQL</>]]> <title><![%flattext-install-include[<productname>PostgreSQL</>]]>
...@@ -55,7 +55,7 @@ su - postgres ...@@ -55,7 +55,7 @@ su - postgres
<application>make</> programs will <emphasis>not</> work. <application>make</> programs will <emphasis>not</> work.
<acronym>GNU</> <application>make</> is often installed under <acronym>GNU</> <application>make</> is often installed under
the name <filename>gmake</filename>; this document will always the name <filename>gmake</filename>; this document will always
refer to it by that name. (On GNU/Linux systems GNU make is the refer to it by that name. (On <systemitem class="osname">GNU/Linux</> systems GNU make is the
default tool with the name <filename>make</>.) To test for default tool with the name <filename>make</>.) To test for
<acronym>GNU</acronym> <application>make</application> enter <acronym>GNU</acronym> <application>make</application> enter
<screen> <screen>
...@@ -112,9 +112,9 @@ su - postgres ...@@ -112,9 +112,9 @@ su - postgres
need these programs only when building from a CVS tree or when need these programs only when building from a CVS tree or when
the actual scanner and parser definition files were changed. If the actual scanner and parser definition files were changed. If
you need them, be sure to get <application>Flex</> 2.5.4 or you need them, be sure to get <application>Flex</> 2.5.4 or
later and <application>Bison</> 1.28 or later. Other yacc later and <application>Bison</> 1.28 or later. Other <application>yacc</>
programs can sometimes be used, but doing so requires extra programs can sometimes be used, but doing so requires extra
efforts and is not recommended. Other lex programs will efforts and is not recommended. Other <application>lex</> programs will
definitely not work. definitely not work.
</para> </para>
</listitem> </listitem>
...@@ -248,7 +248,7 @@ su - postgres ...@@ -248,7 +248,7 @@ su - postgres
<para> <para>
On systems that have <productname>PostgreSQL</> started at boot time, there is On systems that have <productname>PostgreSQL</> started at boot time, there is
probably a start-up file that will accomplish the same thing. For probably a start-up file that will accomplish the same thing. For
example, on a Red Hat Linux system one might find that example, on a <systemitem class="osname">Red Hat Linux</> system one might find that
<screen> <screen>
<userinput>/etc/rc.d/init.d/postgresql stop</userinput> <userinput>/etc/rc.d/init.d/postgresql stop</userinput>
</screen> </screen>
...@@ -335,7 +335,7 @@ su - postgres ...@@ -335,7 +335,7 @@ su - postgres
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term>--prefix=<replaceable>PREFIX</></term> <term><option>--prefix=<replaceable>PREFIX</></option></term>
<listitem> <listitem>
<para> <para>
Install all files under the directory <replaceable>PREFIX</> Install all files under the directory <replaceable>PREFIX</>
...@@ -353,7 +353,7 @@ su - postgres ...@@ -353,7 +353,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--exec-prefix=<replaceable>EXEC-PREFIX</></term> <term><option>--exec-prefix=<replaceable>EXEC-PREFIX</></option></term>
<listitem> <listitem>
<para> <para>
You can install architecture-dependent files under a You can install architecture-dependent files under a
...@@ -369,7 +369,7 @@ su - postgres ...@@ -369,7 +369,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--bindir=<replaceable>DIRECTORY</></term> <term><option>--bindir=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
Specifies the directory for executable programs. The default Specifies the directory for executable programs. The default
...@@ -380,7 +380,7 @@ su - postgres ...@@ -380,7 +380,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--datadir=<replaceable>DIRECTORY</></term> <term><option>--datadir=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
Sets the directory for read-only data files used by the Sets the directory for read-only data files used by the
...@@ -392,7 +392,7 @@ su - postgres ...@@ -392,7 +392,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--sysconfdir=<replaceable>DIRECTORY</></term> <term><option>--sysconfdir=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
The directory for various configuration files, The directory for various configuration files,
...@@ -402,7 +402,7 @@ su - postgres ...@@ -402,7 +402,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--libdir=<replaceable>DIRECTORY</></term> <term><option>--libdir=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
The location to install libraries and dynamically loadable The location to install libraries and dynamically loadable
...@@ -413,7 +413,7 @@ su - postgres ...@@ -413,7 +413,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--includedir=<replaceable>DIRECTORY</></term> <term><option>--includedir=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
The directory for installing C and C++ header files. The The directory for installing C and C++ header files. The
...@@ -423,7 +423,7 @@ su - postgres ...@@ -423,7 +423,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--docdir=<replaceable>DIRECTORY</></term> <term><option>--docdir=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
Documentation files, except <quote>man</> pages, will be Documentation files, except <quote>man</> pages, will be
...@@ -434,7 +434,7 @@ su - postgres ...@@ -434,7 +434,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--mandir=<replaceable>DIRECTORY</></term> <term><option>--mandir=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
The man pages that come with <productname>PostgreSQL</> will be installed under The man pages that come with <productname>PostgreSQL</> will be installed under
...@@ -456,7 +456,7 @@ su - postgres ...@@ -456,7 +456,7 @@ su - postgres
automatically appended to <varname>datadir</varname>, automatically appended to <varname>datadir</varname>,
<varname>sysconfdir</varname>, and <varname>docdir</varname>, <varname>sysconfdir</varname>, and <varname>docdir</varname>,
unless the fully expanded directory name already contains the unless the fully expanded directory name already contains the
string <quote>postgres</quote> or <quote>pgsql</quote>. For string <quote><literal>postgres</></quote> or <quote><literal>pgsql</></quote>. For
example, if you choose <filename>/usr/local</filename> as example, if you choose <filename>/usr/local</filename> as
prefix, the documentation will be installed in prefix, the documentation will be installed in
<filename>/usr/local/doc/postgresql</filename>, but if the <filename>/usr/local/doc/postgresql</filename>, but if the
...@@ -478,13 +478,13 @@ su - postgres ...@@ -478,13 +478,13 @@ su - postgres
<para> <para>
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term>--with-includes=<replaceable>DIRECTORIES</></term> <term><option>--with-includes=<replaceable>DIRECTORIES</></option></term>
<listitem> <listitem>
<para> <para>
<replaceable>DIRECTORIES</> is a colon-separated list of <replaceable>DIRECTORIES</> is a colon-separated list of
directories that will be added to the list the compiler directories that will be added to the list the compiler
searches for header files. If you have optional packages searches for header files. If you have optional packages
(such as GNU Readline) installed in a non-standard location (such as GNU <application>Readline</>) installed in a non-standard location
you have to use this option and probably the corresponding you have to use this option and probably the corresponding
<option>--with-libraries</> option. <option>--with-libraries</> option.
</para> </para>
...@@ -495,7 +495,7 @@ su - postgres ...@@ -495,7 +495,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-libraries=<replaceable>DIRECTORIES</></term> <term><option>--with-libraries=<replaceable>DIRECTORIES</></option></term>
<listitem> <listitem>
<para> <para>
<replaceable>DIRECTORIES</> is a colon-separated list of <replaceable>DIRECTORIES</> is a colon-separated list of
...@@ -511,7 +511,7 @@ su - postgres ...@@ -511,7 +511,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-locale</term> <term><option>--enable-locale</option></term>
<listitem> <listitem>
<para> <para>
Enables locale support. There is a performance penalty Enables locale support. There is a performance penalty
...@@ -522,7 +522,7 @@ su - postgres ...@@ -522,7 +522,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-recode</term> <term><option>--enable-recode</option></term>
<listitem> <listitem>
<para> <para>
Enables single-byte character set recode support. See Enables single-byte character set recode support. See
...@@ -533,7 +533,7 @@ su - postgres ...@@ -533,7 +533,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-multibyte</term> <term><option>--enable-multibyte</option></term>
<listitem> <listitem>
<para> <para>
Allows the use of multibyte character encodings. This is Allows the use of multibyte character encodings. This is
...@@ -547,10 +547,10 @@ su - postgres ...@@ -547,10 +547,10 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-nls<optional>=<replaceable>LANGUAGES</replaceable></optional></term> <term><option>--enable-nls<optional>=<replaceable>LANGUAGES</replaceable></optional></option></term>
<listitem> <listitem>
<para> <para>
Enables Native Language Support (NLS), that is, the ability Enables Native Language Support (<acronym>NLS</acronym>), that is, the ability
to display a program's message in a language other than to display a program's message in a language other than
English. <replaceable>LANGUAGES</replaceable> is a space English. <replaceable>LANGUAGES</replaceable> is a space
separated list of codes of the languages that you want separated list of codes of the languages that you want
...@@ -566,13 +566,13 @@ su - postgres ...@@ -566,13 +566,13 @@ su - postgres
<para> <para>
To use this option, you will need an implementation of the To use this option, you will need an implementation of the
gettext API. Some operating systems have this built-in <application>gettext</> API. Some operating systems have this built-in
(e.g., Linux, NetBSD, Solaris), for other systems you can download (e.g., <systemitem class="osname">Linux</>, <systemitem class="osname">NetBSD</>, <systemitem class="osname">Solaris</>), for other systems you can download
an add-on package from here: <ulink an add-on package from here: <ulink
url="http://www.postgresql.org/~petere/gettext.html" url="http://www.postgresql.org/~petere/gettext.html"
>http://www.postgresql.org/~petere/gettext.html</ulink>. If ><systemitem class="resource">http://www.postgresql.org/~petere/gettext.html</></ulink>. If
you are using the gettext implementation in the GNU C library you are using the <application>gettext</> implementation in the GNU C library
then you will additionally need the GNU gettext package for then you will additionally need the <productname>GNU gettext</productname> package for
some utility programs. For any of the other implementations some utility programs. For any of the other implementations
you will not need it. you will not need it.
</para> </para>
...@@ -585,7 +585,7 @@ su - postgres ...@@ -585,7 +585,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-pgport=<replaceable>NUMBER</></term> <term><option>--with-pgport=<replaceable>NUMBER</></option></term>
<listitem> <listitem>
<para> <para>
Set <replaceable>NUMBER</> as the default port number for Set <replaceable>NUMBER</> as the default port number for
...@@ -598,7 +598,7 @@ su - postgres ...@@ -598,7 +598,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-CXX</term> <term><option>--with-CXX</option></term>
<listitem> <listitem>
<para> <para>
Build the C++ interface library. Build the C++ interface library.
...@@ -607,7 +607,7 @@ su - postgres ...@@ -607,7 +607,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-perl</term> <term><option>--with-perl</option></term>
<listitem> <listitem>
<para> <para>
Build the Perl interface module. The Perl interface Build the Perl interface module. The Perl interface
...@@ -621,7 +621,7 @@ su - postgres ...@@ -621,7 +621,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-python</term> <term><option>--with-python</option></term>
<listitem> <listitem>
<para> <para>
Build the Python interface module. You need to have root Build the Python interface module. You need to have root
...@@ -637,30 +637,33 @@ su - postgres ...@@ -637,30 +637,33 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-tcl</term> <term><option>--with-tcl</option></term>
<listitem> <listitem>
<para> <para>
Builds components that require Tcl/Tk, which are libpgtcl, Builds components that require Tcl/Tk, which are
pgtclsh, pgtksh, pgaccess, and PL/Tcl. But see below about <application>libpgtcl</>, <application>pgtclsh</>,
<application>pgtksh</application>, <application>PgAccess</>,
and <application>PL/Tcl</>. But see below about
<option>--without-tk</>. <option>--without-tk</>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--without-tk</term> <term><option>--without-tk</option></term>
<listitem> <listitem>
<para> <para>
If you specify <option>--with-tcl</> and this option, then If you specify <option>--with-tcl</> and this option, then
programs that require <productname>Tk</> (i.e., pgtksh and pgaccess) programs that require <productname>Tk</>
will be excluded. (<application>pgtksh</> and <application>PgAccess</>) will be
excluded.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-tclconfig=<replaceable>DIRECTORY</replaceable></term> <term><option>--with-tclconfig=<replaceable>DIRECTORY</replaceable></option></term>
<term>--with-tkconfig=<replaceable>DIRECTORY</replaceable></term> <term><option>--with-tkconfig=<replaceable>DIRECTORY</replaceable></option></term>
<listitem> <listitem>
<para> <para>
Tcl/Tk installs the files <filename>tclConfig.sh</filename> and Tcl/Tk installs the files <filename>tclConfig.sh</filename> and
...@@ -675,7 +678,7 @@ su - postgres ...@@ -675,7 +678,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-pltcl-unknown</term> <term><option>--enable-pltcl-unknown</option></term>
<listitem> <listitem>
<para> <para>
Enables enables PL/Tcl unknown support. Enables enables PL/Tcl unknown support.
...@@ -684,10 +687,10 @@ su - postgres ...@@ -684,10 +687,10 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-pltcl-utf</term> <term><option>--enable-pltcl-utf</option></term>
<listitem> <listitem>
<para> <para>
Enables enables PL/Tcl Tcl_UtfToExternal and Tcl_ExternalToUtf Enables enables PL/Tcl <function>Tcl_UtfToExternal</> and <function>Tcl_ExternalToUtf</>
conversion support. These functions needed for Tcl versions 8.1 conversion support. These functions needed for Tcl versions 8.1
and above for proper handling of 8-bit characters. and above for proper handling of 8-bit characters.
</para> </para>
...@@ -695,7 +698,7 @@ su - postgres ...@@ -695,7 +698,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-odbc</term> <term><option>--enable-odbc</option></term>
<listitem> <listitem>
<para> <para>
Build the ODBC driver package. Build the ODBC driver package.
...@@ -704,7 +707,7 @@ su - postgres ...@@ -704,7 +707,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-odbcinst=<replaceable>DIRECTORY</></term> <term><option>--with-odbcinst=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
Specifies the directory where the ODBC driver will expect its Specifies the directory where the ODBC driver will expect its
...@@ -719,8 +722,8 @@ su - postgres ...@@ -719,8 +722,8 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-krb4=<replaceable>DIRECTORY</></term> <term><option>--with-krb4=<replaceable>DIRECTORY</></option></term>
<term>--with-krb5=<replaceable>DIRECTORY</></term> <term><option>--with-krb5=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
Build with support for Kerberos authentication. You can use Build with support for Kerberos authentication. You can use
...@@ -746,11 +749,11 @@ su - postgres ...@@ -746,11 +749,11 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-krb-srvnam=<replaceable>NAME</></term> <term><option>--with-krb-srvnam=<replaceable>NAME</></option></term>
<listitem> <listitem>
<para> <para>
The name of the Kerberos service principal. The name of the Kerberos service principal.
<quote>postgres</quote> is the default. There's probably no <literal>postgres</literal> is the default. There's probably no
reason to change this. reason to change this.
</para> </para>
</listitem> </listitem>
...@@ -762,7 +765,7 @@ su - postgres ...@@ -762,7 +765,7 @@ su - postgres
<seealso>SSL</seealso> <seealso>SSL</seealso>
</indexterm> </indexterm>
<term>--with-openssl=<replaceable>DIRECTORY</></term> <term><option>--with-openssl=<replaceable>DIRECTORY</></option></term>
<listitem> <listitem>
<para> <para>
Build with support for <acronym>SSL</> (encrypted) connections. Build with support for <acronym>SSL</> (encrypted) connections.
...@@ -781,7 +784,7 @@ su - postgres ...@@ -781,7 +784,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--with-java</term> <term><option>--with-java</option></term>
<listitem> <listitem>
<para> <para>
Build the <acronym>JDBC</acronym> driver and associated Java Build the <acronym>JDBC</acronym> driver and associated Java
...@@ -796,12 +799,12 @@ su - postgres ...@@ -796,12 +799,12 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-syslog</term> <term><option>--enable-syslog</option></term>
<listitem> <listitem>
<para> <para>
Enables the <productname>PostgreSQL</> server to use the Enables the <productname>PostgreSQL</> server to use the
syslog logging facility. (Using this option does not mean <systemitem>syslog</> logging facility. (Using this option does not mean
that you must log with syslog or even that it will be done that you must log with <systemitem>syslog</> or even that it will be done
by default, it simply makes it possible to turn this option by default, it simply makes it possible to turn this option
on at run time.) on at run time.)
</para> </para>
...@@ -809,13 +812,13 @@ su - postgres ...@@ -809,13 +812,13 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-debug</term> <term><option>--enable-debug</option></term>
<listitem> <listitem>
<para> <para>
Compiles all programs and libraries with debugging symbols. Compiles all programs and libraries with debugging symbols.
This means that you can run the programs through a debugger This means that you can run the programs through a debugger
to analyze problems. This enlarges the size of the installed to analyze problems. This enlarges the size of the installed
executables considerably, and on non-gcc compilers it usually executables considerably, and on non-GCC compilers it usually
also disables compiler optimization, causing slowdowns. However, also disables compiler optimization, causing slowdowns. However,
having the symbols available is extremely helpful for dealing having the symbols available is extremely helpful for dealing
with any problems that may arise. Currently, this option is with any problems that may arise. Currently, this option is
...@@ -827,7 +830,7 @@ su - postgres ...@@ -827,7 +830,7 @@ su - postgres
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>--enable-cassert</term> <term><option>--enable-cassert</option></term>
<listitem> <listitem>
<para> <para>
Enables <firstterm>assertion</> checks in the server, which test for Enables <firstterm>assertion</> checks in the server, which test for
...@@ -948,7 +951,7 @@ All of PostgreSQL is successfully made. Ready to install. ...@@ -948,7 +951,7 @@ All of PostgreSQL is successfully made. Ready to install.
<para> <para>
The standard install installs only the header files needed for client The standard install installs only the header files needed for client
application development. If you plan to do any server-side program application development. If you plan to do any server-side program
development (such as custom functions or datatypes written in C), development (such as custom functions or data types written in C),
then you may want to install the entire <productname>PostgreSQL</> then you may want to install the entire <productname>PostgreSQL</>
include tree into your target include directory. To do that, enter include tree into your target include directory. To do that, enter
<screen> <screen>
...@@ -1008,21 +1011,26 @@ All of PostgreSQL is successfully made. Ready to install. ...@@ -1008,21 +1011,26 @@ All of PostgreSQL is successfully made. Ready to install.
On some systems that have shared libraries (which most systems do) On some systems that have shared libraries (which most systems do)
you need to tell your system how to find the newly installed you need to tell your system how to find the newly installed
shared libraries. The systems on which this is shared libraries. The systems on which this is
<emphasis>not</emphasis> necessary include FreeBSD, HP/UX, Irix, <emphasis>not</emphasis> necessary include <systemitem
Linux, NetBSD, OpenBSD, OSF/1 (Digital Unix, Tru64 UNIX), and class="osname">BSD/OS</>, <systemitem class="osname">FreeBSD</>,
Solaris. <systemitem class="osname">HP-UX</>, <systemitem
class="osname">IRIX</>, <systemitem class="osname">Linux</>,
<systemitem class="osname">NetBSD</>, <systemitem
class="osname">OpenBSD</>, <systemitem class="osname">Tru64
UNIX</> (formerly <systemitem class="osname">Digital UNIX</>), and
<systemitem class="osname">Solaris</>.
</para> </para>
<para> <para>
The method to set the shared library search path varies between The method to set the shared library search path varies between
platforms, but the most widely usable method is to set the platforms, but the most widely usable method is to set the
environment variable <envar>LD_LIBRARY_PATH</> like so: In Bourne environment variable <envar>LD_LIBRARY_PATH</> like so: In Bourne
shells (sh, ksh, bash, zsh) shells (<command>sh</>, <command>ksh</>, <command>bash</>, <command>zsh</>)
<programlisting> <programlisting>
LD_LIBRARY_PATH=/usr/local/pgsql/lib LD_LIBRARY_PATH=/usr/local/pgsql/lib
export LD_LIBRARY_PATH export LD_LIBRARY_PATH
</programlisting> </programlisting>
or in csh or tcsh or in <command>csh</> or <command>tcsh</>
<programlisting> <programlisting>
setenv LD_LIBRARY_PATH /usr/local/pgsql/lib setenv LD_LIBRARY_PATH /usr/local/pgsql/lib
</programlisting> </programlisting>
...@@ -1082,7 +1090,7 @@ libpq.so.2.1: cannot open shared object file: No such file or directory ...@@ -1082,7 +1090,7 @@ libpq.so.2.1: cannot open shared object file: No such file or directory
<programlisting> <programlisting>
PATH=$PATH:/usr/local/pgsql/bin PATH=$PATH:/usr/local/pgsql/bin
</programlisting> </programlisting>
If you are using csh or tcsh, then use this command: If you are using <command>csh</> or <command>tcsh</>, then use this command:
<programlisting> <programlisting>
set path = ( /usr/local/pgsql/bin $path ) set path = ( /usr/local/pgsql/bin $path )
</programlisting> </programlisting>
...@@ -1317,210 +1325,210 @@ gunzip -c user.ps.gz \ ...@@ -1317,210 +1325,210 @@ gunzip -c user.ps.gz \
</thead> </thead>
<tbody> <tbody>
<row> <row>
<entry>AIX 4.3.3</entry> <entry><systemitem class="osname">AIX 4.3.3</></entry>
<entry>RS6000</entry> <entry><systemitem>RS6000</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-21, Gilles Darold (<email>gilles@darold.net</email>)</entry> <entry>2001-03-21, Gilles Darold (<email>gilles@darold.net</email>)</entry>
<entry>see also <filename>doc/FAQ_AIX</filename></entry> <entry>see also <filename>doc/FAQ_AIX</filename></entry>
</row> </row>
<row> <row>
<entry>BeOS 5.0.4</entry> <entry><systemitem class="osname">BeOS 5.0.4</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-02-26, Cyril Velter (<email>cyril.velter@libertysurf.fr</email>)</entry> <entry>2001-02-26, Cyril Velter (<email>cyril.velter@libertysurf.fr</email>)</entry>
<entry>requires new BONE networking stack</entry> <entry>requires new BONE networking stack</entry>
</row> </row>
<row> <row>
<entry>BSD/OS 4.01</entry> <entry><systemitem class="osname">BSD/OS 4.01</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-20, Bruce Momjian (<email>pgman@candle.pha.pa.us</email>)</entry> <entry>2001-03-20, Bruce Momjian (<email>pgman@candle.pha.pa.us</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>Compaq Tru64 UNIX</entry> <entry><systemitem class="osname">FreeBSD 4.3</></entry>
<entry>Alpha</entry> <entry><systemitem>x86</></entry>
<entry>7.1</entry>
<entry>2001-03-26, Adriaan Joubert (<email>a.joubert@albourne.com</email>)</entry>
<entry>4.0-5.0, cc and gcc</entry>
</row>
<row>
<entry>FreeBSD 4.3</entry>
<entry>x86</entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-19, Vince Vielhaber (<email>vev@hub.org</email>)</entry> <entry>2001-03-19, Vince Vielhaber (<email>vev@hub.org</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>HP/UX</entry> <entry><systemitem class="osname">HP-UX</></entry>
<entry>PA-RISC</entry> <entry><systemitem>PA-RISC</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-19, 10.20 Tom Lane (<email>tgl@sss.pgh.pa.us</email>), <entry>2001-03-19, 10.20 Tom Lane (<email>tgl@sss.pgh.pa.us</email>),
2001-03-22, 11.00, 11i Giles Lean (<email>giles@nemeton.com.au</email>)</entry> 2001-03-22, 11.00, 11i Giles Lean (<email>giles@nemeton.com.au</email>)</entry>
<entry>32- and 64-bit on 11.00; see also <filename>doc/FAQ_HPUX</filename></entry> <entry>32- and 64-bit on 11.00; see also <filename>doc/FAQ_HPUX</filename></entry>
</row> </row>
<row> <row>
<entry>IRIX 6.5.11</entry> <entry><systemitem class="osname">IRIX 6.5.11</></entry>
<entry>MIPS</entry> <entry><systemitem>MIPS</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-22, Robert Bruccoleri (<email>bruc@acm.org</email>)</entry> <entry>2001-03-22, Robert Bruccoleri (<email>bruc@acm.org</email>)</entry>
<entry>32-bit compilation model</entry> <entry>32-bit compilation model</entry>
</row> </row>
<row> <row>
<entry>Linux 2.2.x</entry> <entry><systemitem class="osname">Linux 2.2.x</></entry>
<entry>Alpha</entry> <entry><systemitem>Alpha</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-01-23, Ryan Kirkpatrick (<email>pgsql@rkirkpat.net</email>)</entry> <entry>2001-01-23, Ryan Kirkpatrick (<email>pgsql@rkirkpat.net</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>Linux 2.2.x</entry> <entry><systemitem class="osname">Linux 2.2.x</></entry>
<entry>armv4l</entry> <entry><systemitem>armv4l</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-02-22, Mark Knox (<email>segfault@hardline.org</email>)</entry> <entry>2001-02-22, Mark Knox (<email>segfault@hardline.org</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>Linux 2.0.x</entry> <entry><systemitem class="osname">Linux 2.0.x</></entry>
<entry>MIPS</entry> <entry><systemitem>MIPS</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-30, Dominic Eidson (<email>sauron@the-infinite.org</email>)</entry> <entry>2001-03-30, Dominic Eidson (<email>sauron@the-infinite.org</email>)</entry>
<entry>Cobalt Qube</entry> <entry><productname>Cobalt Qube</></entry>
</row> </row>
<row> <row>
<entry>Linux 2.2.18</entry> <entry><systemitem class="osname">Linux 2.2.18</></entry>
<entry>PPC74xx</entry> <entry><systemitem>PPC74xx</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-19, Tom Lane (<email>tgl@sss.pgh.pa.us</email>)</entry> <entry>2001-03-19, Tom Lane (<email>tgl@sss.pgh.pa.us</email>)</entry>
<entry>Apple G3</entry> <entry>Apple G3</entry>
</row> </row>
<row> <row>
<entry>Linux</entry> <entry><systemitem class="osname">Linux</></entry>
<entry>S/390</entry> <entry><systemitem>S/390</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2000-11-17, Neale Ferguson (<email>Neale.Ferguson@softwareAG-usa.com</email>)</entry> <entry>2000-11-17, Neale Ferguson (<email>Neale.Ferguson@softwareAG-usa.com</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>Linux 2.2.15</entry> <entry><systemitem class="osname">Linux 2.2.15</></entry>
<entry>Sparc</entry> <entry><systemitem>Sparc</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-01-30, Ryan Kirkpatrick (<email>pgsql@rkirkpat.net</email>)</entry> <entry>2001-01-30, Ryan Kirkpatrick (<email>pgsql@rkirkpat.net</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>Linux</entry> <entry><systemitem class="osname">Linux</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-19, Thomas Lockhart (<email>thomas@fourpalms.org</email>)</entry> <entry>2001-03-19, Thomas Lockhart (<email>thomas@fourpalms.org</email>)</entry>
<entry>2.0.x, 2.2.x, 2.4.2</entry> <entry>2.0.x, 2.2.x, 2.4.2</entry>
</row> </row>
<row> <row>
<entry>MacOS X</entry> <entry><systemitem class="osname">MacOS X</></entry>
<entry>PPC</entry> <entry><systemitem>PPC</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2000-12-11, Peter Bierman (<email>bierman@apple.com</email>), <entry>2000-12-11, Peter Bierman (<email>bierman@apple.com</email>),
2000-12-11, Daniel Luke (<email>dluke@geeklair.net</email>)</entry> 2000-12-11, Daniel Luke (<email>dluke@geeklair.net</email>)</entry>
<entry>Darwin (only) Beta-2 or higher</entry> <entry>Darwin (only) Beta-2 or higher</entry>
</row> </row>
<row> <row>
<entry>NetBSD 1.5</entry> <entry><systemitem class="osname">NetBSD 1.5</></entry>
<entry>Alpha</entry> <entry><systemitem>Alpha</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-22, Giles Lean (<email>giles@nemeton.com.au</email>)</entry> <entry>2001-03-22, Giles Lean (<email>giles@nemeton.com.au</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>NetBSD 1.5E</entry> <entry><systemitem class="osname">NetBSD 1.5E</></entry>
<entry>arm32</entry> <entry><systemitem>arm32</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-21, Patrick Welche (<email>prlw1@cam.ac.uk</email>)</entry> <entry>2001-03-21, Patrick Welche (<email>prlw1@cam.ac.uk</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>NetBSD</entry> <entry><systemitem class="osname">NetBSD</></entry>
<entry>m68k</entry> <entry><systemitem>m68k</></entry>
<entry>7.0</entry> <entry>7.0</entry>
<entry>2000-04-10, Henry B. Hotz (<email>hotz@jpl.nasa.gov</email>)</entry> <entry>2000-04-10, Henry B. Hotz (<email>hotz@jpl.nasa.gov</email>)</entry>
<entry>Mac 8xx</entry> <entry>Mac 8xx</entry>
</row> </row>
<row> <row>
<entry>NetBSD</entry> <entry><systemitem class="osname">NetBSD</></entry>
<entry>PPC</entry> <entry><systemitem>PPC</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-04-05, Henry B. Hotz (<email>hotz@jpl.nasa.gov</email>)</entry> <entry>2001-04-05, Henry B. Hotz (<email>hotz@jpl.nasa.gov</email>)</entry>
<entry>Mac G4</entry> <entry>Mac G4</entry>
</row> </row>
<row> <row>
<entry>NetBSD</entry> <entry><systemitem class="osname">NetBSD</></entry>
<entry>Sparc</entry> <entry><systemitem>Sparc</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2000-04-05, Matthew Green (<email>mrg@eterna.com.au</email>)</entry> <entry>2000-04-05, Matthew Green (<email>mrg@eterna.com.au</email>)</entry>
<entry>32- and 64-bit builds</entry> <entry>32- and 64-bit builds</entry>
</row> </row>
<row> <row>
<entry>NetBSD 1.5</entry> <entry><systemitem class="osname">NetBSD 1.5</></entry>
<entry>VAX</entry> <entry><systemitem>VAX</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-30, Tom I. Helbekkmo (<email>tih@kpnQwest.no</email>)</entry> <entry>2001-03-30, Tom I. Helbekkmo (<email>tih@kpnQwest.no</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>NetBSD 1.5</entry> <entry><systemitem class="osname">NetBSD 1.5</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-23, Giles Lean (<email>giles@nemeton.com.au</email>)</entry> <entry>2001-03-23, Giles Lean (<email>giles@nemeton.com.au</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>OpenBSD 2.8</entry> <entry><systemitem class="osname">OpenBSD 2.8</></entry>
<entry>Sparc</entry> <entry><systemitem>Sparc</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-23, Brandon Palmer (<email>bpalmer@crimelabs.net</email>)</entry> <entry>2001-03-23, Brandon Palmer (<email>bpalmer@crimelabs.net</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>OpenBSD 2.8</entry> <entry><systemitem class="osname">OpenBSD 2.8</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-21, Brandon Palmer (<email>bpalmer@crimelabs.net</email>)</entry> <entry>2001-03-21, Brandon Palmer (<email>bpalmer@crimelabs.net</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>SCO UnixWare 7.1.1</entry> <entry><systemitem class="osname">SCO UnixWare 7.1.1</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-19, Larry Rosenman (<email>ler@lerctr.org</email>)</entry> <entry>2001-03-19, Larry Rosenman (<email>ler@lerctr.org</email>)</entry>
<entry>UDK FS compiler; see also <filename>doc/FAQ_SCO</filename></entry> <entry><productname>UDK FS</productname> compiler; see also <filename>doc/FAQ_SCO</filename></entry>
</row> </row>
<row> <row>
<entry>Solaris 2.7-8</entry> <entry><systemitem class="osname">Solaris 2.7-8</></entry>
<entry>Sparc</entry> <entry><systemitem>Sparc</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-22, Marc Fournier (<email>scrappy@hub.org</email>), <entry>2001-03-22, Marc Fournier (<email>scrappy@hub.org</email>),
2001-03-25, Justin Clift (<email>justin@postgresql.org</email>)</entry> 2001-03-25, Justin Clift (<email>justin@postgresql.org</email>)</entry>
<entry>see also <filename>doc/FAQ_Solaris</filename></entry> <entry>see also <filename>doc/FAQ_Solaris</filename></entry>
</row> </row>
<row> <row>
<entry>Solaris 2.8</entry> <entry><systemitem class="osname">Solaris 2.8</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-27, Mathijs Brands (<email>mathijs@ilse.nl</email>)</entry> <entry>2001-03-27, Mathijs Brands (<email>mathijs@ilse.nl</email>)</entry>
<entry>see also <filename>doc/FAQ_Solaris</filename></entry> <entry>see also <filename>doc/FAQ_Solaris</filename></entry>
</row> </row>
<row> <row>
<entry>SunOS 4.1.4</entry> <entry><systemitem class="osname">SunOS 4.1.4</></entry>
<entry>Sparc</entry> <entry><systemitem>Sparc</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-23, Tatsuo Ishii (<email>t-ishii@sra.co.jp</email>)</entry> <entry>2001-03-23, Tatsuo Ishii (<email>t-ishii@sra.co.jp</email>)</entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>Windows NT/2000 with Cygwin</entry> <entry><systemitem class="osname">Tru64 UNIX</></entry>
<entry>x86</entry> <entry><systemitem>Alpha</></entry>
<entry>7.1</entry>
<entry>2001-03-26, Adriaan Joubert (<email>a.joubert@albourne.com</email>)</entry>
<entry>4.0-5.0, <command>cc</> and <command>gcc</></entry>
</row>
<row>
<entry><systemitem class="osname">Windows NT/2000</> with <application>Cygwin</></entry>
<entry><systemitem>x86</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-16, Jason Tishler (<email>Jason.Tishler@dothill.com</email>)</entry> <entry>2001-03-16, Jason Tishler (<email>Jason.Tishler@dothill.com</email>)</entry>
<entry>with <application>Cygwin</application> toolset, see <filename>doc/FAQ_MSWIN</filename></entry> <entry>with <application>Cygwin</application> tool set, see <filename>doc/FAQ_MSWIN</filename></entry>
</row> </row>
</tbody> </tbody>
</tgroup> </tgroup>
...@@ -1552,75 +1560,75 @@ gunzip -c user.ps.gz \ ...@@ -1552,75 +1560,75 @@ gunzip -c user.ps.gz \
<tbody> <tbody>
<row> <row>
<entry>DGUX 5.4R4.11</entry> <entry><systemitem class="osname">DGUX 5.4R4.11</></entry>
<entry>m88k</entry> <entry><systemitem>m88k</></entry>
<entry>6.3</entry> <entry>6.3</entry>
<entry>1998-03-01, Brian E Gallew (<email>geek+@cmu.edu</email>)</entry> <entry>1998-03-01, Brian E Gallew (<email>geek+@cmu.edu</email>)</entry>
<entry>6.4 probably OK</entry> <entry>6.4 probably OK</entry>
</row> </row>
<row> <row>
<entry>MkLinux DR1</entry> <entry><systemitem class="osname">MkLinux DR1</></entry>
<entry>PPC750</entry> <entry><systemitem>PPC750</></entry>
<entry>7.0</entry> <entry>7.0</entry>
<entry>2001-04-03, Tatsuo Ishii (<email>t-ishii@sra.co.jp</email>)</entry> <entry>2001-04-03, Tatsuo Ishii (<email>t-ishii@sra.co.jp</email>)</entry>
<entry>7.1 needs OS update?</entry> <entry>7.1 needs OS update?</entry>
</row> </row>
<row> <row>
<entry>NextStep</entry> <entry><systemitem class="osname">NextStep</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>6.x</entry> <entry>6.x</entry>
<entry>1998-03-01, David Wetzel (<email>dave@turbocat.de</email>)</entry> <entry>1998-03-01, David Wetzel (<email>dave@turbocat.de</email>)</entry>
<entry>bit rot suspected</entry> <entry>bit rot suspected</entry>
</row> </row>
<row> <row>
<entry>QNX 4.25</entry> <entry><systemitem class="osname">QNX 4.25</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>7.0</entry> <entry>7.0</entry>
<entry>2000-04-01, Dr. Andreas Kardos (<email>kardos@repas-aeg.de</email>)</entry> <entry>2000-04-01, Dr. Andreas Kardos (<email>kardos@repas-aeg.de</email>)</entry>
<entry>Spinlock code needs work. See also <filename>doc/FAQ_QNX4</filename>.</entry> <entry>Spinlock code needs work. See also <filename>doc/FAQ_QNX4</filename>.</entry>
</row> </row>
<row> <row>
<entry>SCO OpenServer 5</entry> <entry><systemitem class="osname">SCO OpenServer 5</></entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>6.5</entry> <entry>6.5</entry>
<entry>1999-05-25, Andrew Merrill (<email>andrew@compclass.com</>)</entry> <entry>1999-05-25, Andrew Merrill (<email>andrew@compclass.com</>)</entry>
<entry>7.1 should work, but no reports; see also <filename>doc/FAQ_SCO</filename></entry> <entry>7.1 should work, but no reports; see also <filename>doc/FAQ_SCO</filename></entry>
</row> </row>
<row> <row>
<entry>System V R4</entry> <entry><systemitem class="osname">System V R4</></entry>
<entry>m88k</entry> <entry><systemitem>m88k</></entry>
<entry>6.2.1</entry> <entry>6.2.1</entry>
<entry>1998-03-01, Doug Winterburn (<email>dlw@seavme.xroads.com</email>)</entry> <entry>1998-03-01, Doug Winterburn (<email>dlw@seavme.xroads.com</email>)</entry>
<entry>needs new TAS spinlock code</entry> <entry>needs new <acronym>TAS</acronym> spinlock code</entry>
</row> </row>
<row> <row>
<entry>System V R4</entry> <entry><systemitem class="osname">System V R4</></entry>
<entry>MIPS</entry> <entry><systemitem>MIPS</></entry>
<entry>6.4</entry> <entry>6.4</entry>
<entry>1998-10-28, Frank Ridderbusch (<email>ridderbusch.pad@sni.de</email>)</entry> <entry>1998-10-28, Frank Ridderbusch (<email>ridderbusch.pad@sni.de</email>)</entry>
<entry>no 64-bit integer</entry> <entry>no 64-bit integer</entry>
</row> </row>
<row> <row>
<entry>Ultrix</entry> <entry><systemitem class="osname">Ultrix</></entry>
<entry>MIPS</entry> <entry><systemitem>MIPS</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-26</entry> <entry>2001-03-26</entry>
<entry>TAS spinlock code not detected</entry> <entry><acronym>TAS</acronym> spinlock code not detected</entry>
</row> </row>
<row> <row>
<entry>Ultrix</entry> <entry><systemitem class="osname">Ultrix</></entry>
<entry>VAX</entry> <entry><systemitem>VAX</></entry>
<entry>6.x</entry> <entry>6.x</entry>
<entry>1998-03-01</entry> <entry>1998-03-01</entry>
<entry>No recent reports. Obsolete?</entry> <entry>No recent reports. Obsolete?</entry>
</row> </row>
<row> <row>
<entry>Windows 9x, ME, NT, 2000 (native)</entry> <entry><systemitem class="osname">Windows 9x, ME, NT, 2000</> (native)</entry>
<entry>x86</entry> <entry><systemitem>x86</></entry>
<entry>7.1</entry> <entry>7.1</entry>
<entry>2001-03-26, Magnus Hagander (<email>mha@sollentuna.net</email>)</entry> <entry>2001-03-26, Magnus Hagander (<email>mha@sollentuna.net</email>)</entry>
<entry> <entry>
client-side libraries (libpq and psql) or ODBC/JDBC, no server-side; client-side libraries (<application>libpq</> and <application>psql</>) or ODBC/JDBC, no server-side;
<![%flattext-install-include[see Administrator's Guide]]> <![%flattext-install-include[see Administrator's Guide]]>
<![%flattext-install-ignore[see <xref linkend="install-win32">]]> <![%flattext-install-ignore[see <xref linkend="install-win32">]]>
for instructions for instructions
......
<!-- <!--
$Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.2 2001/08/27 23:42:34 tgl Exp $ $Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.3 2001/09/09 23:52:12 petere Exp $
--> -->
<chapter id="maintenance"> <chapter id="maintenance">
...@@ -94,7 +94,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.2 2001/08/27 23:42:34 ...@@ -94,7 +94,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.2 2001/08/27 23:42:34
In normal <productname>PostgreSQL</productname> operation, an UPDATE or In normal <productname>PostgreSQL</productname> operation, an UPDATE or
DELETE of a row does not immediately remove the old <firstterm>tuple</> DELETE of a row does not immediately remove the old <firstterm>tuple</>
(version of the row). This approach is necessary to gain the benefits (version of the row). This approach is necessary to gain the benefits
of multi-version concurrency control (see the User's Guide): the tuple of multiversion concurrency control (see the User's Guide): the tuple
must not be deleted while must not be deleted while
it is still potentially visible to other transactions. But eventually, it is still potentially visible to other transactions. But eventually,
an outdated or deleted tuple is no longer of interest to any transaction. an outdated or deleted tuple is no longer of interest to any transaction.
...@@ -106,7 +106,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.2 2001/08/27 23:42:34 ...@@ -106,7 +106,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.2 2001/08/27 23:42:34
<para> <para>
Clearly, a table that receives frequent updates or deletes will need Clearly, a table that receives frequent updates or deletes will need
to be vacuumed more often than tables that are seldom updated. It may to be vacuumed more often than tables that are seldom updated. It may
be useful to set up periodic cron tasks that vacuum only selected tables, be useful to set up periodic <application>cron</> tasks that vacuum only selected tables,
skipping tables that are known not to change often. This is only likely skipping tables that are known not to change often. This is only likely
to be helpful if you have both large heavily-updated tables and large to be helpful if you have both large heavily-updated tables and large
seldom-updated tables --- the extra cost of vacuuming a small table seldom-updated tables --- the extra cost of vacuuming a small table
...@@ -170,7 +170,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.2 2001/08/27 23:42:34 ...@@ -170,7 +170,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.2 2001/08/27 23:42:34
statistics updates if the statistical distribution of the data is not statistics updates if the statistical distribution of the data is not
changing much. A simple rule of thumb is to think about how much changing much. A simple rule of thumb is to think about how much
the minimum and maximum values of the columns in the table change. the minimum and maximum values of the columns in the table change.
For example, a timestamp column that contains the time of row update For example, a <type>timestamp</type> column that contains the time of row update
will have a constantly-increasing maximum value as rows are added and will have a constantly-increasing maximum value as rows are added and
updated; such a column will probably need more frequent statistics updated; such a column will probably need more frequent statistics
updates than, say, a column containing URLs for pages accessed on a updates than, say, a column containing URLs for pages accessed on a
...@@ -233,12 +233,12 @@ $Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.2 2001/08/27 23:42:34 ...@@ -233,12 +233,12 @@ $Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.2 2001/08/27 23:42:34
<para> <para>
Prior to <productname>PostgreSQL</productname> 7.2, the only defense Prior to <productname>PostgreSQL</productname> 7.2, the only defense
against XID wraparound was to re-initdb at least every 4 billion against XID wraparound was to re-<command>initdb</> at least every 4 billion
transactions. This of course was not very satisfactory for high-traffic transactions. This of course was not very satisfactory for high-traffic
sites, so a better solution has been devised. The new approach allows an sites, so a better solution has been devised. The new approach allows an
installation to remain up indefinitely, without initdb or any sort of installation to remain up indefinitely, without <command>initdb</> or any sort of
restart. The price is this maintenance requirement: restart. The price is this maintenance requirement:
<emphasis>every table in the database must be VACUUMed at least once every <emphasis>every table in the database must be vacuumed at least once every
billion transactions</emphasis>. billion transactions</emphasis>.
</para> </para>
...@@ -342,7 +342,7 @@ VACUUM ...@@ -342,7 +342,7 @@ VACUUM
user-created databases that are to be marked <literal>datallowconn</> = user-created databases that are to be marked <literal>datallowconn</> =
<literal>false</> in <filename>pg_database</>, since there isn't any <literal>false</> in <filename>pg_database</>, since there isn't any
convenient way to vacuum a database that you can't connect to. Note convenient way to vacuum a database that you can't connect to. Note
that VACUUM's automatic warning message about unvacuumed databases will that <command>VACUUM</command>'s automatic warning message about unvacuumed databases will
ignore <filename>pg_database</> entries with <literal>datallowconn</> = ignore <filename>pg_database</> entries with <literal>datallowconn</> =
<literal>false</>, so as to avoid giving false warnings about these <literal>false</>, so as to avoid giving false warnings about these
databases; therefore it's up to you to ensure that such databases are databases; therefore it's up to you to ensure that such databases are
......
<!-- <!--
$Header: /cvsroot/pgsql/doc/src/sgml/manage-ag.sgml,v 2.13 2001/03/29 18:25:10 petere Exp $ $Header: /cvsroot/pgsql/doc/src/sgml/manage-ag.sgml,v 2.14 2001/09/09 23:52:12 petere Exp $
--> -->
<chapter id="managing-databases"> <chapter id="managing-databases">
...@@ -85,11 +85,11 @@ CREATE DATABASE <replaceable>name</> ...@@ -85,11 +85,11 @@ CREATE DATABASE <replaceable>name</>
createdb <replaceable class="parameter">dbname</replaceable> createdb <replaceable class="parameter">dbname</replaceable>
</synopsis> </synopsis>
<filename>createdb</> does no magic. It connects to the template1 <command>createdb</> does no magic. It connects to the template1
database and executes the <command>CREATE DATABASE</> command, database and executes the <command>CREATE DATABASE</> command,
exactly as described above. It uses <application>psql</> program exactly as described above. It uses <application>psql</> program
internally. The reference page on createdb contains the invocation internally. The reference page on <command>createdb</> contains the invocation
details. In particular, createdb without any arguments will create details. In particular, <command>createdb</> without any arguments will create
a database with the current user name, which may or may not be what a database with the current user name, which may or may not be what
you want. you want.
</para> </para>
...@@ -132,7 +132,7 @@ export PGDATA2 ...@@ -132,7 +132,7 @@ export PGDATA2
setenv PGDATA2 /home/postgres/data setenv PGDATA2 /home/postgres/data
</programlisting> </programlisting>
</informalexample> </informalexample>
in csh or tcsh. You have to make sure that this environment in <application>csh</> or <application>tcsh</>. You have to make sure that this environment
variable is always defined in the server environment, otherwise variable is always defined in the server environment, otherwise
you won't be able to access that database. Therefore you probably you won't be able to access that database. Therefore you probably
want to set it in some sort of shell start-up file or server want to set it in some sort of shell start-up file or server
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/regress.sgml,v 1.18 2001/08/06 22:53:26 tgl Exp $ --> <!-- $Header: /cvsroot/pgsql/doc/src/sgml/regress.sgml,v 1.19 2001/09/09 23:52:12 petere Exp $ -->
<chapter id="regress"> <chapter id="regress">
<title id="regress-title">Regression Tests</title> <title id="regress-title">Regression Tests</title>
...@@ -102,7 +102,7 @@ ...@@ -102,7 +102,7 @@
<prompt>$ </prompt><userinput>gmake installcheck</userinput> <prompt>$ </prompt><userinput>gmake installcheck</userinput>
</screen> </screen>
The tests will expect to contact the server at the local host and the The tests will expect to contact the server at the local host and the
default port number, unless directed otherwise by PGHOST and PGPORT default port number, unless directed otherwise by <envar>PGHOST</envar> and <envar>PGPORT</envar>
environment variables. environment variables.
</para> </para>
...@@ -178,7 +178,7 @@ ...@@ -178,7 +178,7 @@
<title>Date and time differences</title> <title>Date and time differences</title>
<para> <para>
Some of the queries in the <quote>timestamp</quote> test will Some of the queries in the <filename>timestamp</filename> test will
fail if you run the test on the day of a daylight-savings time fail if you run the test on the day of a daylight-savings time
changeover, or the day before or after one. These queries assume changeover, or the day before or after one. These queries assume
that the intervals between midnight yesterday, midnight today and that the intervals between midnight yesterday, midnight today and
...@@ -189,21 +189,21 @@ ...@@ -189,21 +189,21 @@
<para> <para>
Most of the date and time results are dependent on the time zone Most of the date and time results are dependent on the time zone
environment. The reference files are generated for time zone environment. The reference files are generated for time zone
PST8PDT (Berkeley, California) and there will be apparent <literal>PST8PDT</literal> (Berkeley, California) and there will be apparent
failures if the tests are not run with that time zone setting. failures if the tests are not run with that time zone setting.
The regression test driver sets environment variable The regression test driver sets environment variable
<envar>PGTZ</envar> to <literal>PST8PDT</literal>, which normally <envar>PGTZ</envar> to <literal>PST8PDT</literal>, which normally
ensures proper results. However, your system must provide library ensures proper results. However, your system must provide library
support for the PST8PDT time zone, or the time zone-dependent support for the <literal>PST8PDT</literal> time zone, or the time zone-dependent
tests will fail. To verify that your machine does have this tests will fail. To verify that your machine does have this
support, type the following: support, type the following:
<screen> <screen>
<prompt>$ </prompt><userinput>env TZ=PST8PDT date</userinput> <prompt>$ </prompt><userinput>env TZ=PST8PDT date</userinput>
</screen> </screen>
The command above should have returned the current system time in The command above should have returned the current system time in
the PST8PDT time zone. If the PST8PDT database is not available, the <literal>PST8PDT</literal> time zone. If the <literal>PST8PDT</literal> database is not available,
then your system may have returned the time in GMT. If the then your system may have returned the time in GMT. If the
PST8PDT time zone is not available, you can set the time zone <literal>PST8PDT</literal> time zone is not available, you can set the time zone
rules explicitly: rules explicitly:
<programlisting> <programlisting>
PGTZ='PST8PDT7,M04.01.0,M10.05.03'; export PGTZ PGTZ='PST8PDT7,M04.01.0,M10.05.03'; export PGTZ
...@@ -220,7 +220,7 @@ PGTZ='PST8PDT7,M04.01.0,M10.05.03'; export PGTZ ...@@ -220,7 +220,7 @@ PGTZ='PST8PDT7,M04.01.0,M10.05.03'; export PGTZ
<para> <para>
Some systems using older time zone libraries fail to apply Some systems using older time zone libraries fail to apply
daylight-savings corrections to dates before 1970, causing daylight-savings corrections to dates before 1970, causing
pre-1970 PDT times to be displayed in PST instead. This will pre-1970 <acronym>PDT</acronym> times to be displayed in <acronym>PST</acronym> instead. This will
result in localized differences in the test results. result in localized differences in the test results.
</para> </para>
</sect2> </sect2>
...@@ -300,7 +300,7 @@ ORDER BY to that particular query and thereby eliminate the bogus ...@@ -300,7 +300,7 @@ ORDER BY to that particular query and thereby eliminate the bogus
</para> </para>
<para> <para>
You might wonder why we don't ORDER all the regress test SELECTs to You might wonder why we don't order all the regress test queries explicitly to
get rid of this issue once and for all. The reason is that that would get rid of this issue once and for all. The reason is that that would
make the regression tests less useful, not more, since they'd tend make the regression tests less useful, not more, since they'd tend
to exercise query plan types that produce ordered results to the to exercise query plan types that produce ordered results to the
...@@ -352,7 +352,7 @@ testname/platformpattern=comparisonfilename ...@@ -352,7 +352,7 @@ testname/platformpattern=comparisonfilename
</synopsis> </synopsis>
The test name is just the name of the particular regression test The test name is just the name of the particular regression test
module. The platform pattern is a pattern in the style of module. The platform pattern is a pattern in the style of
expr(1) (that is, a regular expression with an implicit <citerefentry><refentrytitle>expr</><manvolnum>1</></citerefentry> (that is, a regular expression with an implicit
<literal>^</literal> anchor <literal>^</literal> anchor
at the start). It is matched against the platform name as printed at the start). It is matched against the platform name as printed
by <filename>config.guess</filename> followed by by <filename>config.guess</filename> followed by
...@@ -365,19 +365,19 @@ testname/platformpattern=comparisonfilename ...@@ -365,19 +365,19 @@ testname/platformpattern=comparisonfilename
<para> <para>
For example: some systems using older time zone libraries fail to apply For example: some systems using older time zone libraries fail to apply
daylight-savings corrections to dates before 1970, causing daylight-savings corrections to dates before 1970, causing
pre-1970 PDT times to be displayed in PST instead. This causes a pre-1970 <acronym>PDT</acronym> times to be displayed in <acronym>PST</acronym> instead. This causes a
few differences in the <filename>horology</> regression test. few differences in the <filename>horology</> regression test.
Therefore, we provide a variant comparison file, Therefore, we provide a variant comparison file,
<filename>horology-no-DST-before-1970.out</filename>, which includes <filename>horology-no-DST-before-1970.out</filename>, which includes
the results to be expected on these systems. To silence the bogus the results to be expected on these systems. To silence the bogus
<quote>failure</quote> message on HPPA platforms, resultmap <quote>failure</quote> message on <systemitem>HPPA</systemitem> platforms, <filename>resultmap</filename>
includes includes
<programlisting> <programlisting>
horology/hppa=horology-no-DST-before-1970 horology/hppa=horology-no-DST-before-1970
</programlisting> </programlisting>
which will trigger on any machine for which config.guess's output which will trigger on any machine for which the output of <command>config.guess</command>
begins with <quote><literal>hppa</literal></quote>. Other lines begins with <quote><literal>hppa</literal></quote>. Other lines
in resultmap select the variant comparison file for other in <filename>resultmap</> select the variant comparison file for other
platforms where it's appropriate. platforms where it's appropriate.
</para> </para>
......
<!-- <!--
$Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.98 2001/08/14 23:38:20 momjian Exp $ $Header: /cvsroot/pgsql/doc/src/sgml/release.sgml,v 1.99 2001/09/09 23:52:12 petere Exp $
--> -->
<appendix id="release"> <appendix id="release">
...@@ -239,7 +239,7 @@ outer join syntax. ...@@ -239,7 +239,7 @@ outer join syntax.
<listitem> <listitem>
<para> <para>
The previous C function manager did not The previous C function manager did not
handle NULLs properly, nor did it support 64-bit CPU's (Alpha). The new handle NULLs properly, nor did it support 64-bit <acronym>CPU</acronym>'s (Alpha). The new
function manager does. You can continue using your old custom function manager does. You can continue using your old custom
functions, but you may want to rewrite them in the future to use the new functions, but you may want to rewrite them in the future to use the new
function manager call interface. function manager call interface.
...@@ -723,12 +723,12 @@ ecpg changes (Michael) ...@@ -723,12 +723,12 @@ ecpg changes (Michael)
<varlistentry> <varlistentry>
<term> <term>
Updated psql Updated <application>psql</application>
</term> </term>
<listitem> <listitem>
<para> <para>
<application>psql</application>, our interactive terminal monitor, has been <application>psql</application>, our interactive terminal monitor, has been
updated with a variety of new features. See the psql manual page for details. updated with a variety of new features. See the <application>psql</application> manual page for details.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
...@@ -783,7 +783,7 @@ ecpg changes (Michael) ...@@ -783,7 +783,7 @@ ecpg changes (Michael)
<listitem> <listitem>
<para> <para>
The date/time types <type>datetime</type> and The date/time types <type>datetime</type> and
<type>timespan</type> have been superceded by the <type>timespan</type> have been superseded by the
SQL92-defined types <type>timestamp</type> and SQL92-defined types <type>timestamp</type> and
<type>interval</type>. Although there has been some effort to <type>interval</type>. Although there has been some effort to
ease the transition by allowing ease the transition by allowing
...@@ -1176,7 +1176,7 @@ New multibyte encodings ...@@ -1176,7 +1176,7 @@ New multibyte encodings
<para> <para>
This is basically a cleanup release for 6.5.2. We have added a new This is basically a cleanup release for 6.5.2. We have added a new
pgaccess that was missing in 6.5.2, and installed an NT-specific fix. <application>PgAccess</> that was missing in 6.5.2, and installed an NT-specific fix.
</para> </para>
...@@ -1394,7 +1394,7 @@ Add Win1250 (Czech) support (Pavel Behal) ...@@ -1394,7 +1394,7 @@ Add Win1250 (Czech) support (Pavel Behal)
<listitem> <listitem>
<para> <para>
<application>pg_dump</application> takes advantage of the new <application>pg_dump</application> takes advantage of the new
MVCC features to give a consistant database dump/backup while MVCC features to give a consistent database dump/backup while
the database stays online and available for queries. the database stays online and available for queries.
</para> </para>
</listitem> </listitem>
...@@ -1457,7 +1457,7 @@ Add Win1250 (Czech) support (Pavel Behal) ...@@ -1457,7 +1457,7 @@ Add Win1250 (Czech) support (Pavel Behal)
<listitem> <listitem>
<para> <para>
We continue to expand our port list, this time including We continue to expand our port list, this time including
WinNT/ix86 and NetBSD/arm32. <systemitem class="osname">Windows NT</>/<systemitem>ix86</> and <systemitem class="osname">NetBSD</>/<systemitem>arm32</>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
...@@ -1482,7 +1482,7 @@ Add Win1250 (Czech) support (Pavel Behal) ...@@ -1482,7 +1482,7 @@ Add Win1250 (Czech) support (Pavel Behal)
<para> <para>
New and updated material is present throughout the New and updated material is present throughout the
documentation. New <acronym>FAQ</acronym>s have been documentation. New <acronym>FAQ</acronym>s have been
contributed for SGI and AIX platforms. contributed for <systemitem class="osname">SGI</> and <systemitem class="osname">AIX</> platforms.
The <citetitle>Tutorial</citetitle> has introductory information The <citetitle>Tutorial</citetitle> has introductory information
on <acronym>SQL</acronym> from Stefan Simkovics. on <acronym>SQL</acronym> from Stefan Simkovics.
For the <citetitle>User's Guide</citetitle>, there are For the <citetitle>User's Guide</citetitle>, there are
...@@ -1547,7 +1547,7 @@ Add Win1250 (Czech) support (Pavel Behal) ...@@ -1547,7 +1547,7 @@ Add Win1250 (Czech) support (Pavel Behal)
<para> <para>
Keep the above in mind if you are using Keep the above in mind if you are using
<filename>contrib/refint.*</filename> triggers for <filename>contrib/refint.*</filename> triggers for
referential integrity. Additional technics are required now. One way is referential integrity. Additional techniques are required now. One way is
to use <command>LOCK parent_table IN SHARE ROW EXCLUSIVE MODE</command> to use <command>LOCK parent_table IN SHARE ROW EXCLUSIVE MODE</command>
command if a transaction is going to update/delete a primary key and command if a transaction is going to update/delete a primary key and
use <command>LOCK parent_table IN SHARE MODE</command> command if a use <command>LOCK parent_table IN SHARE MODE</command> command if a
...@@ -1557,7 +1557,7 @@ Add Win1250 (Czech) support (Pavel Behal) ...@@ -1557,7 +1557,7 @@ Add Win1250 (Czech) support (Pavel Behal)
<para> <para>
Note that if you run a transaction in SERIALIZABLE mode then you must Note that if you run a transaction in SERIALIZABLE mode then you must
execute the <command>LOCK</command> commands above before execution of any execute the <command>LOCK</command> commands above before execution of any
DML statement <acronym>DML</acronym> statement
(<command>SELECT/INSERT/DELETE/UPDATE/FETCH/COPY_TO</command>) in the (<command>SELECT/INSERT/DELETE/UPDATE/FETCH/COPY_TO</command>) in the
transaction. transaction.
</para> </para>
...@@ -1901,8 +1901,8 @@ for the <citetitle>Programmer's Guide</citetitle>. ...@@ -1901,8 +1901,8 @@ for the <citetitle>Programmer's Guide</citetitle>.
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Jan also contributed a second procedural language, PL/pgSQL, to go with the Jan also contributed a second procedural language, <application>PL/pgSQL</application>, to go with the
original PL/pgTCL procedural language he contributed last release. original <application>PL/pgTCL</application> procedural language he contributed last release.
</para> </para>
</listitem> </listitem>
...@@ -2194,7 +2194,7 @@ new Makefile.shlib for shared library configuration(Tom) ...@@ -2194,7 +2194,7 @@ new Makefile.shlib for shared library configuration(Tom)
--> -->
<para> <para>
This is a bugfix release for 6.3.x. This is a bug-fix release for 6.3.x.
Refer to the release notes for version 6.3 for a more complete summary of new features. Refer to the release notes for version 6.3 for a more complete summary of new features.
</para> </para>
<para> <para>
...@@ -2218,7 +2218,7 @@ Correctly handles function calls on the left side of BETWEEN and LIKE clauses. ...@@ -2218,7 +2218,7 @@ Correctly handles function calls on the left side of BETWEEN and LIKE clauses.
</para> </para>
<para> <para>
A dump/restore is NOT required for those running 6.3 or 6.3.1. A A dump/restore is NOT required for those running 6.3 or 6.3.1. A
'make distclean', 'make', and 'make install' is all that is required. <literal>make distclean</>, <literal>make</>, and <literal>make install</> is all that is required.
This last step should be performed while the postmaster is not running. This last step should be performed while the postmaster is not running.
You should re-link any custom applications that use <productname>Postgres</productname> libraries. You should re-link any custom applications that use <productname>Postgres</productname> libraries.
</para> </para>
...@@ -2306,7 +2306,7 @@ Improvements to the configuration autodetection for installation. ...@@ -2306,7 +2306,7 @@ Improvements to the configuration autodetection for installation.
</para> </para>
<para> <para>
A dump/restore is NOT required for those running 6.3. A A dump/restore is NOT required for those running 6.3. A
'make distclean', 'make', and 'make install' is all that is required. <literal>make distclean</>, <literal>make</>, and <literal>make install</> is all that is required.
This last step should be performed while the postmaster is not running. This last step should be performed while the postmaster is not running.
You should re-link any custom applications that use <productname>Postgres</productname> libraries. You should re-link any custom applications that use <productname>Postgres</productname> libraries.
</para> </para>
...@@ -2435,18 +2435,18 @@ Better identify tcl and tk libs and includes(Bruce) ...@@ -2435,18 +2435,18 @@ Better identify tcl and tk libs and includes(Bruce)
use them in the target list. use them in the target list.
</para> </para>
<para> <para>
Second, 6.3 uses unix domain sockets rather than TCP/IP by default. To Second, 6.3 uses Unix domain sockets rather than TCP/IP by default. To
enable connections from other machines, you have to use the new enable connections from other machines, you have to use the new
postmaster -i option, and of course edit pg_hba.conf. Also, for this postmaster -i option, and of course edit <filename>pg_hba.conf</filename>. Also, for this
reason, the format of pg_hba.conf has changed. reason, the format of <filename>pg_hba.conf</filename> has changed.
</para> </para>
<para> <para>
Third, char() fields will now allow faster access than varchar() or Third, <type>char()</type> fields will now allow faster access than <type>varchar()</type> or
text. Specifically, the text and varchar() have a penalty for access to <type>text</type>. Specifically, the <type>text</> and <type>varchar()</type> have a penalty for access to
any columns after the first column of this type. char() used to also any columns after the first column of this type. <type>char()</type> used to also
have this access penalty, but it no longer does. This may suggest that have this access penalty, but it no longer does. This may suggest that
you redesign some of your tables, especially if you have short character you redesign some of your tables, especially if you have short character
columns that you have defined as varchar() or text. This and other columns that you have defined as <type>varchar()</type> or <type>text</type>. This and other
changes make 6.3 even faster than earlier releases. changes make 6.3 even faster than earlier releases.
</para> </para>
<para> <para>
...@@ -2455,7 +2455,7 @@ Better identify tcl and tk libs and includes(Bruce) ...@@ -2455,7 +2455,7 @@ Better identify tcl and tk libs and includes(Bruce)
See the <citetitle>Administrator's Guide</citetitle> for more See the <citetitle>Administrator's Guide</citetitle> for more
information. There is a new table, pg_shadow, which is used to store information. There is a new table, pg_shadow, which is used to store
user information and user passwords, and it by default only SELECT-able user information and user passwords, and it by default only SELECT-able
by the postgres super-user. pg_user is now a view of pg_shadow, and is by the <systemitem>postgres</systemitem> super-user. pg_user is now a view of pg_shadow, and is
SELECT-able by PUBLIC. You should keep using pg_user in your SELECT-able by PUBLIC. You should keep using pg_user in your
application without changes. application without changes.
</para> </para>
...@@ -2467,20 +2467,20 @@ Better identify tcl and tk libs and includes(Bruce) ...@@ -2467,20 +2467,20 @@ Better identify tcl and tk libs and includes(Bruce)
</para> </para>
<para> <para>
We also have real deadlock detection code. No more sixty-second We also have real deadlock detection code. No more sixty-second
timeouts. And the new locking code implements a FIFO better, so there timeouts. And the new locking code implements a <acronym>FIFO</acronym> better, so there
should be less resource starvation during heavy use. should be less resource starvation during heavy use.
</para> </para>
<para> <para>
Many complaints have been made about inadequate documenation in previous Many complaints have been made about inadequate documentation in previous
releases. Thomas has put much effort into many new manuals for this releases. Thomas has put much effort into many new manuals for this
release. Check out the doc/ directory. release. Check out the doc/ directory.
</para> </para>
<para> <para>
For performance reasons, time travel is gone, but can be implemented For performance reasons, time travel is gone, but can be implemented
using triggers (see pgsql/contrib/spi/README). Please check out the new using triggers (see <filename>pgsql/contrib/spi/README</filename>). Please check out the new
\d command for types, operators, etc. Also, views have their own \d command for types, operators, etc. Also, views have their own
permissions now, not based on the underlying tables, so permissions on permissions now, not based on the underlying tables, so permissions on
them have to be set separately. Check /pgsql/interfaces for some new them have to be set separately. Check <filename>/pgsql/interfaces</filename> for some new
ways to talk to <productname>Postgres</productname>. ways to talk to <productname>Postgres</productname>.
</para> </para>
<para> <para>
...@@ -2735,7 +2735,7 @@ upon updating the executables. ...@@ -2735,7 +2735,7 @@ upon updating the executables.
</para> </para>
<para> <para>
Another way to avoid dump/reload is to use the following SQL command Another way to avoid dump/reload is to use the following SQL command
from psql to update the existing system table: from <command>psql</command> to update the existing system table:
<programlisting> <programlisting>
update pg_aggregate set aggfinalfn = 'cash_div_flt8' update pg_aggregate set aggfinalfn = 'cash_div_flt8'
...@@ -2800,7 +2800,7 @@ This migration requires a complete dump of the 6.1 database and a ...@@ -2800,7 +2800,7 @@ This migration requires a complete dump of the 6.1 database and a
restore of the database in 6.2. restore of the database in 6.2.
</para> </para>
<para> <para>
Note that the pg_dump and pg_dumpall utility from 6.2 should be used Note that the <command>pg_dump</command> and <command>pg_dumpall</command> utility from 6.2 should be used
to dump the 6.1 database. to dump the 6.1 database.
</para> </para>
</sect2> </sect2>
...@@ -3014,9 +3014,9 @@ pg_dumpall now returns proper status, portability fix(Bruce) ...@@ -3014,9 +3014,9 @@ pg_dumpall now returns proper status, portability fix(Bruce)
</para> </para>
<para> <para>
Three new data types (datetime, timespan, and circle) have been added to Three new data types (<type>datetime</type>, <type>timespan</type>, and <type>circle</type>) have been added to
the native set of <productname>Postgres</productname> types. Points, boxes, paths, and polygons the native set of <productname>Postgres</productname> types. Points, boxes, paths, and polygons
have had their output formats made consistant across the data types. have had their output formats made consistent across the data types.
The polygon output in misc.out has only been spot-checked for correctness The polygon output in misc.out has only been spot-checked for correctness
relative to the original regression output. relative to the original regression output.
</para> </para>
...@@ -3043,7 +3043,7 @@ optimizer which uses <firstterm>genetic</firstterm> ...@@ -3043,7 +3043,7 @@ optimizer which uses <firstterm>genetic</firstterm>
<para> <para>
The float8 regression test fails on at least some platforms. This is due The float8 regression test fails on at least some platforms. This is due
to differences in implementations of pow() and exp() and the signaling to differences in implementations of <function>pow()</function> and <function>exp()</function> and the signaling
mechanisms used for overflow and underflow conditions. mechanisms used for overflow and underflow conditions.
</para> </para>
...@@ -3379,21 +3379,21 @@ releases. ...@@ -3379,21 +3379,21 @@ releases.
<para> <para>
Here is a new migration file for 1.02.1. It includes the 'copy' change Here is a new migration file for 1.02.1. It includes the 'copy' change
and a script to convert old ascii files. and a script to convert old <acronym>ASCII</acronym> files.
</para> </para>
<note> <note>
<para> <para>
The following notes are for the benefit of users who want to migrate The following notes are for the benefit of users who want to migrate
databases from postgres95 1.01 and 1.02 to postgres95 1.02.1. databases from <productname>Postgres95</> 1.01 and 1.02 to <productname>Postgres95</> 1.02.1.
</para> </para>
<para> <para>
If you are starting afresh with postgres95 1.02.1 and do not need If you are starting afresh with <productname>Postgres95</> 1.02.1 and do not need
to migrate old databases, you do not need to read any further. to migrate old databases, you do not need to read any further.
</para> </para>
</note> </note>
<para> <para>
In order to upgrade older postgres95 version 1.01 or 1.02 databases to In order to upgrade older <productname>Postgres95</> version 1.01 or 1.02 databases to
version 1.02.1, the following steps are required: version 1.02.1, the following steps are required:
</para> </para>
<procedure> <procedure>
...@@ -3407,9 +3407,9 @@ Start up a new 1.02.1 postmaster ...@@ -3407,9 +3407,9 @@ Start up a new 1.02.1 postmaster
Add the new built-in functions and operators of 1.02.1 to 1.01 or 1.02 Add the new built-in functions and operators of 1.02.1 to 1.01 or 1.02
databases. This is done by running the new 1.02.1 server against databases. This is done by running the new 1.02.1 server against
your own 1.01 or 1.02 database and applying the queries attached at your own 1.01 or 1.02 database and applying the queries attached at
the end of thie file. This can be done easily through psql. If your the end of the file. This can be done easily through <command>psql</>. If your
1.01 or 1.02 database is named "testdb" and you have cut the commands 1.01 or 1.02 database is named <literal>testdb</literal> and you have cut the commands
from the end of this file and saved them in addfunc.sql: from the end of this file and saved them in <filename>addfunc.sql</filename>:
<programlisting> <programlisting>
% psql testdb -f addfunc.sql % psql testdb -f addfunc.sql
</programlisting> </programlisting>
...@@ -3426,9 +3426,9 @@ not a cause for concern. ...@@ -3426,9 +3426,9 @@ not a cause for concern.
<title>Dump/Reload Procedure</title> <title>Dump/Reload Procedure</title>
<para> <para>
If you are trying to reload a pg_dump or text-mode 'copy tablename to If you are trying to reload a pg_dump or text-mode, <literal>copy tablename to
stdout' generated with a previous version, you will need to run the stdout</literal> generated with a previous version, you will need to run the
attached sed script on the ASCII file before loading it into the attached <command>sed</command> script on the ASCII file before loading it into the
database. The old format used '.' as end-of-data, while '\.' is now the database. The old format used '.' as end-of-data, while '\.' is now the
end-of-data marker. Also, empty strings are now loaded in as '' rather end-of-data marker. Also, empty strings are now loaded in as '' rather
than NULL. See the copy manual page for full details. than NULL. See the copy manual page for full details.
...@@ -3539,21 +3539,21 @@ Contributors (appologies to any missed) ...@@ -3539,21 +3539,21 @@ Contributors (appologies to any missed)
<para> <para>
The following notes are for the benefit of users who want to migrate The following notes are for the benefit of users who want to migrate
databases from postgres95 1.0 to postgres95 1.01. databases from <productname>Postgres95</> 1.0 to <productname>Postgres95</> 1.01.
</para> </para>
<para> <para>
If you are starting afresh with postgres95 1.01 and do not need If you are starting afresh with <productname>Postgres95</> 1.01 and do not need
to migrate old databases, you do not need to read any further. to migrate old databases, you do not need to read any further.
</para> </para>
<para> <para>
In order to postgres95 version 1.01 with databases created with In order to <productname>Postgres95</> version 1.01 with databases created with
postgres95 version 1.0, the following steps are required: <productname>Postgres95</> version 1.0, the following steps are required:
</para> </para>
<procedure> <procedure>
<step> <step>
<para> <para>
Set the definition of NAMEDATALEN in src/Makefile.global to 16 Set the definition of <symbol>NAMEDATALEN</symbol> in <filename>src/Makefile.global</filename> to 16
and OIDNAMELEN to 20. and <symbol>OIDNAMELEN</symbol> to 20.
</para> </para>
</step> </step>
<step> <step>
...@@ -3563,8 +3563,8 @@ Decide whether you want to use Host based authentication. ...@@ -3563,8 +3563,8 @@ Decide whether you want to use Host based authentication.
<substeps> <substeps>
<step> <step>
<para> <para>
If you do, you must create a file name "pg_hba" in your top-level data If you do, you must create a file name <literal>pg_hba</literal> in your top-level data
directory (typically the value of your $PGDATA). src/libpq/pg_hba directory (typically the value of your <envar>$PGDATA</envar>). <filename>src/libpq/pg_hba</filename>
shows an example syntax. shows an example syntax.
</para> </para>
</step> </step>
...@@ -3575,7 +3575,7 @@ If you do not want host-based authentication, you can comment out ...@@ -3575,7 +3575,7 @@ If you do not want host-based authentication, you can comment out
<programlisting> <programlisting>
HBA = 1 HBA = 1
</programlisting> </programlisting>
in src/Makefile.global in <filename>src/Makefile.global</filename>
</para> </para>
<para> <para>
Note that host-based authentication is turned on by default, and if Note that host-based authentication is turned on by default, and if
...@@ -3588,24 +3588,24 @@ If you do not want host-based authentication, you can comment out ...@@ -3588,24 +3588,24 @@ If you do not want host-based authentication, you can comment out
<step> <step>
<para> <para>
Compile and install 1.01, but DO NOT do the initdb step. Compile and install 1.01, but DO NOT do the <command>initdb</command> step.
</para> </para>
</step> </step>
<step> <step>
<para> <para>
Before doing anything else, terminate your 1.0 postmaster, and Before doing anything else, terminate your 1.0 postmaster, and
backup your existing $PGDATA directory. backup your existing <envar>$PGDATA</envar> directory.
</para> </para>
</step> </step>
<step> <step>
<para> <para>
Set your PGDATA environment variable to your 1.0 databases, but set up Set your <envar>PGDATA</envar> environment variable to your 1.0 databases, but set up
path up so that 1.01 binaries are being used. path up so that 1.01 binaries are being used.
</para> </para>
</step> </step>
<step> <step>
<para> <para>
Modify the file $PGDATA/PG_VERSION from 5.0 to 5.1 Modify the file <filename><envar>$PGDATA</envar>/PG_VERSION</filename> from 5.0 to 5.1
</para> </para>
</step> </step>
<step> <step>
...@@ -3618,8 +3618,8 @@ Start up a new 1.01 postmaster ...@@ -3618,8 +3618,8 @@ Start up a new 1.01 postmaster
Add the new built-in functions and operators of 1.01 to 1.0 Add the new built-in functions and operators of 1.01 to 1.0
databases. This is done by running the new 1.01 server against databases. This is done by running the new 1.01 server against
your own 1.0 database and applying the queries attached and saving your own 1.0 database and applying the queries attached and saving
in the file 1.0_to_1.01.sql. This can be done easily through psql. in the file 1.0_to_1.01.sql. This can be done easily through <command>psql</command>.
If your 1.0 database is name "testdb": If your 1.0 database is name <literal>testdb</literal>:
<programlisting> <programlisting>
% psql testdb -f 1.0_to_1.01.sql % psql testdb -f 1.0_to_1.01.sql
...@@ -4049,7 +4049,7 @@ Initial release. ...@@ -4049,7 +4049,7 @@ Initial release.
04:21 Dual Pentium Pro 180, 224MB, UW-SCSI, Linux 2.0.36, gcc 2.7.2.3 -O2 -m486 04:21 Dual Pentium Pro 180, 224MB, UW-SCSI, Linux 2.0.36, gcc 2.7.2.3 -O2 -m486
</programlisting> </programlisting>
For the linux system above, using UW-SCSI disks rather than (older) IDE For the <systemitem class="osname">Linux</systemitem> system above, using <acronym>UW-SCSI</acronym> disks rather than (older) <acronym>IDE</acronym>
disks leads to a 50% improvement in speed on the regression test. disks leads to a 50% improvement in speed on the regression test.
</para> </para>
</sect2> </sect2>
......
<!-- <!--
$Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.76 2001/09/07 00:46:41 tgl Exp $ $Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.77 2001/09/09 23:52:12 petere Exp $
--> -->
<Chapter Id="runtime"> <Chapter Id="runtime">
...@@ -32,7 +32,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.76 2001/09/07 00:46:41 tgl ...@@ -32,7 +32,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/runtime.sgml,v 1.76 2001/09/07 00:46:41 tgl
<para> <para>
To add a user account to your system, look for a command To add a user account to your system, look for a command
<command>useradd</command> or <command>adduser</command>. The user <command>useradd</command> or <command>adduser</command>. The user
name <quote>postgres</quote> is often used but by no means name <systemitem>postgres</systemitem> is often used but by no means
required. required.
</para> </para>
</sect1> </sect1>
...@@ -136,7 +136,7 @@ NOTICE: Initializing database with en_US collation order. ...@@ -136,7 +136,7 @@ NOTICE: Initializing database with en_US collation order.
current locale is done by changing the value of the environment variable current locale is done by changing the value of the environment variable
<literal>LC_ALL</literal> or <literal>LANG</literal>. The sort order used <literal>LC_ALL</literal> or <literal>LANG</literal>. The sort order used
within a particular database cluster is set by <command>initdb</command> within a particular database cluster is set by <command>initdb</command>
and cannot be changed later, short of dumping all data, re-initdb, and cannot be changed later, short of dumping all data, rerunning <command>initdb</command>,
reload data. So it's important to make this choice correctly now. reload data. So it's important to make this choice correctly now.
</para> </para>
</sect1> </sect1>
...@@ -285,7 +285,7 @@ fi ...@@ -285,7 +285,7 @@ fi
<programlisting> <programlisting>
su - postgres -c "/usr/local/pgsql/bin/pg_ctl start -l logfile -D /usr/local/pgsql/data" su - postgres -c "/usr/local/pgsql/bin/pg_ctl start -l logfile -D /usr/local/pgsql/data"
</programlisting> </programlisting>
Then, create a symlink to it in <filename>/etc/rc3.d</> as Then, create a symbolic link to it in <filename>/etc/rc3.d</> as
<literal>S99postgresql</>. <literal>S99postgresql</>.
</para> </para>
</listitem> </listitem>
...@@ -295,7 +295,7 @@ su - postgres -c "/usr/local/pgsql/bin/pg_ctl start -l logfile -D /usr/local/pgs ...@@ -295,7 +295,7 @@ su - postgres -c "/usr/local/pgsql/bin/pg_ctl start -l logfile -D /usr/local/pgs
<para> <para>
While the <application>postmaster</application> is running, its While the <application>postmaster</application> is running, its
PID is in the file <filename>postmaster.pid</filename> in the data <acronym>PID</acronym> is in the file <filename>postmaster.pid</filename> in the data
directory. This is used as an interlock against multiple postmasters directory. This is used as an interlock against multiple postmasters
running in the same data directory, and can also be used for running in the same data directory, and can also be used for
shutting down the postmaster. shutting down the postmaster.
...@@ -374,7 +374,7 @@ IpcSemaphoreCreate: semget(key=5440026, num=16, 01600) failed: No space left on ...@@ -374,7 +374,7 @@ IpcSemaphoreCreate: semget(key=5440026, num=16, 01600) failed: No space left on
</para> </para>
<para> <para>
Details about configuring System V IPC facilities are given in Details about configuring <systemitem class="osname">System V</> <acronym>IPC</> facilities are given in
<xref linkend="sysvipc">. <xref linkend="sysvipc">.
</para> </para>
</sect2> </sect2>
...@@ -449,7 +449,7 @@ psql: could not connect to server: Connection refused ...@@ -449,7 +449,7 @@ psql: could not connect to server: Connection refused
<para> <para>
All parameter names are case-insensitive. Every parameter takes a All parameter names are case-insensitive. Every parameter takes a
value of one of the four types boolean, integer, floating point, value of one of the four types Boolean, integer, floating point,
string as described below. Boolean values are string as described below. Boolean values are
<literal>ON</literal>, <literal>OFF</literal>, <literal>ON</literal>, <literal>OFF</literal>,
<literal>TRUE</literal>, <literal>FALSE</literal>, <literal>TRUE</literal>, <literal>FALSE</literal>,
...@@ -479,7 +479,7 @@ syslog = 2 ...@@ -479,7 +479,7 @@ syslog = 2
<primary>SIGHUP</primary> <primary>SIGHUP</primary>
</indexterm> </indexterm>
The configuration file is reread whenever the postmaster receives The configuration file is reread whenever the postmaster receives
a SIGHUP signal. This signal is also propagated to all running a <systemitem>SIGHUP</> signal. This signal is also propagated to all running
backend processes, so that running sessions get the new default. backend processes, so that running sessions get the new default.
Alternatively, you can send the signal to only one backend process Alternatively, you can send the signal to only one backend process
directly. directly.
...@@ -525,7 +525,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -525,7 +525,7 @@ env PGOPTIONS='-c geqo=off' psql
<para> <para>
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term>CPU_INDEX_TUPLE_COST (<type>floating point</type>)</term> <term><varname>CPU_INDEX_TUPLE_COST</varname> (<type>floating point</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the query optimizer's estimate of the cost of processing Sets the query optimizer's estimate of the cost of processing
...@@ -536,7 +536,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -536,7 +536,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>CPU_OPERATOR_COST (<type>floating point</type>)</term> <term><varname>CPU_OPERATOR_COST</varname> (<type>floating point</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the optimizer's estimate of the cost of processing each Sets the optimizer's estimate of the cost of processing each
...@@ -547,7 +547,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -547,7 +547,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>CPU_TUPLE_COST (<type>floating point</type>)</term> <term><varname>CPU_TUPLE_COST</varname> (<type>floating point</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the query optimizer's estimate of the cost of processing Sets the query optimizer's estimate of the cost of processing
...@@ -558,7 +558,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -558,7 +558,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>EFFECTIVE_CACHE_SIZE (<type>floating point</type>)</term> <term><varname>EFFECTIVE_CACHE_SIZE</varname> (<type>floating point</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the optimizer's assumption about the effective size of Sets the optimizer's assumption about the effective size of
...@@ -571,7 +571,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -571,7 +571,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>ENABLE_HASHJOIN (<type>boolean</type>)</term> <term><varname>ENABLE_HASHJOIN</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Enables or disables the query planner's use of hash-join plan Enables or disables the query planner's use of hash-join plan
...@@ -586,7 +586,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -586,7 +586,7 @@ env PGOPTIONS='-c geqo=off' psql
<primary>index scan</primary> <primary>index scan</primary>
</indexterm> </indexterm>
<term>ENABLE_INDEXSCAN (<type>boolean</type>)</term> <term><varname>ENABLE_INDEXSCAN</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Enables or disables the query planner's use of index scan plan Enables or disables the query planner's use of index scan plan
...@@ -597,7 +597,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -597,7 +597,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>ENABLE_MERGEJOIN (<type>boolean</type>)</term> <term><varname>ENABLE_MERGEJOIN</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Enables or disables the query planner's use of merge-join plan Enables or disables the query planner's use of merge-join plan
...@@ -608,7 +608,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -608,7 +608,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>ENABLE_NESTLOOP (<type>boolean</type>)</term> <term><varname>ENABLE_NESTLOOP</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Enables or disables the query planner's use of nested-loop Enables or disables the query planner's use of nested-loop
...@@ -626,7 +626,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -626,7 +626,7 @@ env PGOPTIONS='-c geqo=off' psql
<primary>sequential scan</primary> <primary>sequential scan</primary>
</indexterm> </indexterm>
<term>ENABLE_SEQSCAN (<type>boolean</type>)</term> <term><varname>ENABLE_SEQSCAN</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Enables or disables the query planner's use of sequential scan Enables or disables the query planner's use of sequential scan
...@@ -640,7 +640,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -640,7 +640,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>ENABLE_SORT (<type>boolean</type>)</term> <term><varname>ENABLE_SORT</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Enables or disables the query planner's use of explicit sort Enables or disables the query planner's use of explicit sort
...@@ -653,10 +653,10 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -653,10 +653,10 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>ENABLE_TIDSCAN (<type>boolean</type>)</term> <term><varname>ENABLE_TIDSCAN</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Enables or disables the query planner's use of TID scan plan Enables or disables the query planner's use of <acronym>TID</> scan plan
types. The default is on. This is mostly useful to debug the types. The default is on. This is mostly useful to debug the
query planner. query planner.
</para> </para>
...@@ -672,23 +672,23 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -672,23 +672,23 @@ env PGOPTIONS='-c geqo=off' psql
<see>genetic query optimization</see> <see>genetic query optimization</see>
</indexterm> </indexterm>
<term>GEQO (<type>boolean</type>)</term> <term><varname>GEQO</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Enables or disables genetic query optimization, which is an Enables or disables genetic query optimization, which is an
algorithm that attempts to do query planning without algorithm that attempts to do query planning without
exhaustive search. This is on by default. See also the various exhaustive search. This is on by default. See also the various
other GEQO_ settings. other <varname>GEQO_</varname> settings.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>GEQO_EFFORT (<type>integer</type>)</term> <term><varname>GEQO_EFFORT</varname> (<type>integer</type>)</term>
<term>GEQO_GENERATIONS (<type>integer</type>)</term> <term><varname>GEQO_GENERATIONS</varname> (<type>integer</type>)</term>
<term>GEQO_POOL_SIZE (<type>integer</type>)</term> <term><varname>GEQO_POOL_SIZE</varname> (<type>integer</type>)</term>
<term>GEQO_RANDOM_SEED (<type>integer</type>)</term> <term><varname>GEQO_RANDOM_SEED</varname> (<type>integer</type>)</term>
<term>GEQO_SELECTION_BIAS (<type>floating point</type>)</term> <term><varname>GEQO_SELECTION_BIAS</varname> (<type>floating point</type>)</term>
<listitem> <listitem>
<para> <para>
Various tuning parameters for the genetic query optimization Various tuning parameters for the genetic query optimization
...@@ -700,19 +700,19 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -700,19 +700,19 @@ env PGOPTIONS='-c geqo=off' psql
are between 1 and 80, 40 being the default. Generations are between 1 and 80, 40 being the default. Generations
specifies the number of iterations in the algorithm. The specifies the number of iterations in the algorithm. The
number must be a positive integer. If 0 is specified then number must be a positive integer. If 0 is specified then
Effort * Log2(PoolSize) is used. The run time of the algorithm <literal>Effort * Log2(PoolSize)</literal> is used. The run time of the algorithm
is roughly proportional to the sum of pool size and is roughly proportional to the sum of pool size and
generations. The selection bias is the selective pressure generations. The selection bias is the selective pressure
within the population. Values can be from 1.50 to 2.00; the within the population. Values can be from 1.50 to 2.00; the
latter is the default. The random seed can be set to get latter is the default. The random seed can be set to get
reproduceable results from the algorithm. If it is set to -1 reproducible results from the algorithm. If it is set to -1
then the algorithm behaves non-deterministically. then the algorithm behaves non-deterministically.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>GEQO_THRESHOLD (<type>integer</type>)</term> <term><varname>GEQO_THRESHOLD</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Use genetic query optimization to plan queries with at least Use genetic query optimization to plan queries with at least
...@@ -725,24 +725,24 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -725,24 +725,24 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>KSQO (<type>boolean</type>)</term> <term><varname>KSQO</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
The <firstterm>Key Set Query Optimizer</firstterm> The <firstterm>Key Set Query Optimizer</firstterm>
(<abbrev>KSQO</abbrev>) causes the query planner to convert (<acronym>KSQO</acronym>) causes the query planner to convert
queries whose WHERE clause contains many OR'ed AND clauses queries whose WHERE clause contains many OR'ed AND clauses
(such as <literal>WHERE (a=1 AND b=2) OR (a=2 AND b=3) (such as <literal>WHERE (a=1 AND b=2) OR (a=2 AND b=3)
...</literal>) into a UNION query. This method can be faster ...</literal>) into a UNION query. This method can be faster
than the default implementation, but it doesn't necessarily than the default implementation, but it doesn't necessarily
give exactly the same results, since UNION implicitly adds a give exactly the same results, since UNION implicitly adds a
SELECT DISTINCT clause to eliminate identical output rows. SELECT DISTINCT clause to eliminate identical output rows.
KSQO is commonly used when working with products like <acronym>KSQO</acronym> is commonly used when working with products like
<productname>Microsoft Access</productname>, which tend to <productname>Microsoft Access</productname>, which tend to
generate queries of this form. generate queries of this form.
</para> </para>
<para> <para>
The KSQO algorithm used to be absolutely essential for queries The <acronym>KSQO</acronym> algorithm used to be absolutely essential for queries
with many OR'ed AND clauses, but in with many OR'ed AND clauses, but in
<productname>Postgres</productname> 7.0 and later the standard <productname>Postgres</productname> 7.0 and later the standard
planner handles these queries fairly successfully. Hence the planner handles these queries fairly successfully. Hence the
...@@ -752,7 +752,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -752,7 +752,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>RANDOM_PAGE_COST (<type>floating point</type>)</term> <term><varname>RANDOM_PAGE_COST</varname> (<type>floating point</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the query optimizer's estimate of the cost of a Sets the query optimizer's estimate of the cost of a
...@@ -781,7 +781,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -781,7 +781,7 @@ env PGOPTIONS='-c geqo=off' psql
<para> <para>
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term>DEBUG_ASSERTIONS (<type>boolean</type>)</term> <term><varname>DEBUG_ASSERTIONS</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Turns on various assertion checks. This is a debugging aid. If Turns on various assertion checks. This is a debugging aid. If
...@@ -797,7 +797,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -797,7 +797,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>DEBUG_LEVEL (<type>integer</type>)</term> <term><varname>DEBUG_LEVEL</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
The higher this value is set, the more The higher this value is set, the more
...@@ -810,11 +810,11 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -810,11 +810,11 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>DEBUG_PRINT_QUERY (<type>boolean</type>)</term> <term><varname>DEBUG_PRINT_QUERY</varname> (<type>boolean</type>)</term>
<term>DEBUG_PRINT_PARSE (<type>boolean</type>)</term> <term><varname>DEBUG_PRINT_PARSE</varname> (<type>boolean</type>)</term>
<term>DEBUG_PRINT_REWRITTEN (<type>boolean</type>)</term> <term><varname>DEBUG_PRINT_REWRITTEN</varname> (<type>boolean</type>)</term>
<term>DEBUG_PRINT_PLAN (<type>boolean</type>)</term> <term><varname>DEBUG_PRINT_PLAN</varname> (<type>boolean</type>)</term>
<term>DEBUG_PRETTY_PRINT (<type>boolean</type>)</term> <term><varname>DEBUG_PRETTY_PRINT</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
These flags enable various debugging output to be sent to the These flags enable various debugging output to be sent to the
...@@ -829,7 +829,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -829,7 +829,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>HOSTNAME_LOOKUP (<type>boolean</type>)</term> <term><varname>HOSTNAME_LOOKUP</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
By default, connection logs only show the IP address of the By default, connection logs only show the IP address of the
...@@ -842,7 +842,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -842,7 +842,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>LOG_CONNECTIONS (<type>boolean</type>)</term> <term><varname>LOG_CONNECTIONS</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Prints a line informing about each successful connection to Prints a line informing about each successful connection to
...@@ -854,7 +854,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -854,7 +854,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>LOG_PID (<type>boolean</type>)</term> <term><varname>LOG_PID</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Prefixes each server log message with the process id of the Prefixes each server log message with the process id of the
...@@ -865,20 +865,20 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -865,20 +865,20 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>LOG_TIMESTAMP (<type>boolean</type>)</term> <term><varname>LOG_TIMESTAMP</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Prefixes each server log message with a timestamp. The default Prefixes each server log message with a time stamp. The default
is off. is off.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SHOW_QUERY_STATS (<type>boolean</type>)</term> <term><varname>SHOW_QUERY_STATS</varname> (<type>boolean</type>)</term>
<term>SHOW_PARSER_STATS (<type>boolean</type>)</term> <term><varname>SHOW_PARSER_STATS</varname> (<type>boolean</type>)</term>
<term>SHOW_PLANNER_STATS (<type>boolean</type>)</term> <term><varname>SHOW_PLANNER_STATS</varname> (<type>boolean</type>)</term>
<term>SHOW_EXECUTOR_STATS (<type>boolean</type>)</term> <term><varname>SHOW_EXECUTOR_STATS</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
For each query, write performance statistics of the respective For each query, write performance statistics of the respective
...@@ -889,7 +889,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -889,7 +889,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SHOW_SOURCE_PORT (<type>boolean</type>)</term> <term><varname>SHOW_SOURCE_PORT</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Shows the outgoing port number of the connecting host in the Shows the outgoing port number of the connecting host in the
...@@ -902,19 +902,19 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -902,19 +902,19 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SYSLOG (<type>integer</type>)</term> <term><varname>SYSLOG</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
<productname>Postgres</productname> allows the use of <productname>Postgres</productname> allows the use of
<application>syslog</application> for logging. If this option <systemitem>syslog</systemitem> for logging. If this option
is set to 1, messages go both to syslog and the standard is set to 1, messages go both to <systemitem>syslog</> and the standard
output. A setting of 2 sends output only to syslog. (Some output. A setting of 2 sends output only to <systemitem>syslog</>. (Some
messages will still go to the standard output/error.) The messages will still go to the standard output/error.) The
default is 0, which means syslog is off. This option must be default is 0, which means <systemitem>syslog</> is off. This option must be
set at server start. set at server start.
</para> </para>
<para> <para>
To use syslog, the build of To use <systemitem>syslog</>, the build of
<productname>Postgres</productname> must be configured with <productname>Postgres</productname> must be configured with
the <option>--enable-syslog</option> option. the <option>--enable-syslog</option> option.
</para> </para>
...@@ -922,11 +922,11 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -922,11 +922,11 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SYSLOG_FACILITY (<type>string</type>)</term> <term><varname>SYSLOG_FACILITY</varname> (<type>string</type>)</term>
<listitem> <listitem>
<para> <para>
This option determines the <application>syslog</application> This option determines the <application>syslog</application>
<quote>facility</quote> to be used when syslog is enabled. <quote>facility</quote> to be used when <application>syslog</application> is enabled.
You may choose from LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, You may choose from LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4,
LOCAL5, LOCAL6, LOCAL7; the default is LOCAL0. See also the LOCAL5, LOCAL6, LOCAL7; the default is LOCAL0. See also the
documentation of your system's documentation of your system's
...@@ -936,20 +936,20 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -936,20 +936,20 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SYSLOG_IDENT (<type>string</type>)</term> <term><varname>SYSLOG_IDENT</varname> (<type>string</type>)</term>
<listitem> <listitem>
<para> <para>
If logging to syslog is enabled, this option determines the If logging to <application>syslog</> is enabled, this option determines the
program name used to identify program name used to identify
<productname>PostgreSQL</productname> messages in <productname>PostgreSQL</productname> messages in
<application>syslog</application> log messages. The default <application>syslog</application> log messages. The default
is <quote>postgres</quote>. is <literal>postgres</literal>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>TRACE_NOTIFY (<type>boolean</type>)</term> <term><varname>TRACE_NOTIFY</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Generates a great amount of debugging output for the Generates a great amount of debugging output for the
...@@ -968,13 +968,13 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -968,13 +968,13 @@ env PGOPTIONS='-c geqo=off' psql
<para> <para>
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term>AUSTRALIAN_TIMEZONES (<type>bool</type>)</term> <term><varname>AUSTRALIAN_TIMEZONES</varname> (<type>bool</type>)</term>
<listitem> <listitem>
<para> <para>
If set to true, <literal>CST</literal>, <literal>EST</literal>, If set to true, <literal>CST</literal>, <literal>EST</literal>,
and <literal>SAT</literal> are interpreted as Australian and <literal>SAT</literal> are interpreted as Australian
timezones rather than as North American Central/Eastern time zones rather than as North American Central/Eastern
Timezones and Saturday. The default is false. time zones and Saturday. The default is false.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
...@@ -985,7 +985,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -985,7 +985,7 @@ env PGOPTIONS='-c geqo=off' psql
<secondary>timeout</secondary> <secondary>timeout</secondary>
</indexterm> </indexterm>
<term>DEADLOCK_TIMEOUT (<type>integer</type>)</term> <term><varname>DEADLOCK_TIMEOUT</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
This is the amount of time, in milliseconds, to wait on a lock This is the amount of time, in milliseconds, to wait on a lock
...@@ -1013,7 +1013,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -1013,7 +1013,7 @@ env PGOPTIONS='-c geqo=off' psql
<primary>transaction isolation level</primary> <primary>transaction isolation level</primary>
</indexterm> </indexterm>
<term>DEFAUL_TRANSACTION_ISOLATION (<type>string</type>)</term> <term><varname>DEFAUL_TRANSACTION_ISOLATION</varname> (<type>string</type>)</term>
<listitem> <listitem>
<para> <para>
Each SQL transaction has an isolation level, which can be Each SQL transaction has an isolation level, which can be
...@@ -1032,7 +1032,7 @@ env PGOPTIONS='-c geqo=off' psql ...@@ -1032,7 +1032,7 @@ env PGOPTIONS='-c geqo=off' psql
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>DYNAMIC_LIBRARY_PATH (<type>string</type>)</term> <term><varname>DYNAMIC_LIBRARY_PATH</varname> (<type>string</type>)</term>
<listitem> <listitem>
<para> <para>
If a dynamically loadable module needs to be opened and the If a dynamically loadable module needs to be opened and the
...@@ -1079,7 +1079,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1079,7 +1079,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<primary>fsync</primary> <primary>fsync</primary>
</indexterm> </indexterm>
<term>FSYNC (<type>boolean</type>)</term> <term><varname>FSYNC</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
If this option is on, the <productname>Postgres</> backend If this option is on, the <productname>Postgres</> backend
...@@ -1098,7 +1098,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1098,7 +1098,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
to block and wait for the operating system to flush the to block and wait for the operating system to flush the
buffers. Without <function>fsync</>, the operating system is buffers. Without <function>fsync</>, the operating system is
allowed to do its best in buffering, sorting, and delaying allowed to do its best in buffering, sorting, and delaying
writes, which can make for a considerable perfomance writes, which can make for a considerable performance
increase. However, if the system crashes, the results of the increase. However, if the system crashes, the results of the
last few committed transactions may be lost in part or whole; last few committed transactions may be lost in part or whole;
in the worst case, unrecoverable data corruption may occur. in the worst case, unrecoverable data corruption may occur.
...@@ -1112,7 +1112,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1112,7 +1112,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
some leave it on just to be on the safe side. Because it is some leave it on just to be on the safe side. Because it is
the safe side, on is also the default. If you trust your the safe side, on is also the default. If you trust your
operating system, your hardware, and your utility company (or operating system, your hardware, and your utility company (or
better your UPS), you might want to disable fsync. better your UPS), you might want to disable <varname>fsync</varname>.
</para> </para>
<para> <para>
...@@ -1131,7 +1131,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1131,7 +1131,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>KRB_SERVER_KEYFILE (<type>string</type>)</term> <term><varname>KRB_SERVER_KEYFILE</varname> (<type>string</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the location of the Kerberos server key file. See Sets the location of the Kerberos server key file. See
...@@ -1141,7 +1141,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1141,7 +1141,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>MAX_CONNECTIONS (<type>integer</type>)</term> <term><varname>MAX_CONNECTIONS</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Determines how many concurrent connections the database server Determines how many concurrent connections the database server
...@@ -1152,7 +1152,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1152,7 +1152,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>MAX_EXPR_DEPTH (<type>integer</type>)</term> <term><varname>MAX_EXPR_DEPTH</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the maximum expression nesting depth that the parser will Sets the maximum expression nesting depth that the parser will
...@@ -1165,7 +1165,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1165,7 +1165,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>MAX_FSM_RELATIONS (<type>integer</type>)</term> <term><varname>MAX_FSM_RELATIONS</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the maximum number of relations (tables) for which free space Sets the maximum number of relations (tables) for which free space
...@@ -1176,7 +1176,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1176,7 +1176,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>MAX_FSM_PAGES (<type>integer</type>)</term> <term><varname>MAX_FSM_PAGES</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the maximum number of disk pages for which free space Sets the maximum number of disk pages for which free space
...@@ -1187,11 +1187,11 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1187,11 +1187,11 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>MAX_LOCKS_PER_XACT (<type>integer</type>)</term> <term><varname>MAX_LOCKS_PER_XACT</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
The shared lock table is sized on the assumption that at most The shared lock table is sized on the assumption that at most
max_locks_per_xact * max_connections distinct objects will need <varname>max_locks_per_xact</> * <varname>max_connections</varname> distinct objects will need
to be locked at any one time. The default, 64, has historically to be locked at any one time. The default, 64, has historically
proven sufficient, but you might need to raise this value if you proven sufficient, but you might need to raise this value if you
have clients that touch many different tables in a single transaction. have clients that touch many different tables in a single transaction.
...@@ -1201,7 +1201,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1201,7 +1201,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>PORT (<type>integer</type>)</term> <term><varname>PORT</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
The TCP port the server listens on; 5432 by default. This The TCP port the server listens on; 5432 by default. This
...@@ -1211,7 +1211,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1211,7 +1211,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SHARED_BUFFERS (<type>integer</type>)</term> <term><varname>SHARED_BUFFERS</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the number of shared memory buffers the database server Sets the number of shared memory buffers the database server
...@@ -1222,14 +1222,14 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1222,14 +1222,14 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SILENT_MODE (<type>bool</type>)</term> <term><varname>SILENT_MODE</varname> (<type>bool</type>)</term>
<listitem> <listitem>
<para> <para>
Runs postmaster silently. If this option is set, postmaster Runs postmaster silently. If this option is set, postmaster
will automatically run in background and any controlling ttys will automatically run in background and any controlling ttys
are disassociated, thus no messages are written to stdout or are disassociated, thus no messages are written to standard output or
stderr (same effect as postmaster's -S option). Unless some standard error (same effect as postmaster's -S option). Unless some
logging system such as syslog is enabled, using this option is logging system such as <application>syslog</> is enabled, using this option is
discouraged since it makes it impossible to see error discouraged since it makes it impossible to see error
messages. messages.
</para> </para>
...@@ -1237,7 +1237,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1237,7 +1237,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SORT_MEM (<type>integer</type>)</term> <term><varname>SORT_MEM</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Specifies the amount of memory to be used by internal sorts Specifies the amount of memory to be used by internal sorts
...@@ -1248,19 +1248,19 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1248,19 +1248,19 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
much memory as this value specifies before it starts to put much memory as this value specifies before it starts to put
data into temporary files. And don't forget that each running data into temporary files. And don't forget that each running
backend could be doing one or more sorts. So the total memory backend could be doing one or more sorts. So the total memory
space needed could be many times the value of SORT_MEM. space needed could be many times the value of <varname>SORT_MEM</varname>.
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SQL_INHERITANCE (<type>bool</type>)</term> <term><varname>SQL_INHERITANCE</varname> (<type>bool</type>)</term>
<listitem> <listitem>
<para> <para>
This controls the inheritance semantics, in particular whether This controls the inheritance semantics, in particular whether
subtables are included into the consideration of various subtables are included into the consideration of various
commands by default. This was not the case in versions prior commands by default. This was not the case in versions prior
to 7.1. If you need the old behaviour you can set this to 7.1. If you need the old behavior you can set this
variable to off, but in the long run you are encouraged to variable to off, but in the long run you are encouraged to
change your applications to use the <literal>ONLY</literal> change your applications to use the <literal>ONLY</literal>
keyword to exclude subtables. See the SQL language reference keyword to exclude subtables. See the SQL language reference
...@@ -1275,7 +1275,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1275,7 +1275,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<primary>SSL</primary> <primary>SSL</primary>
</indexterm> </indexterm>
<term>SSL (<type>boolean</type>)</term> <term><varname>SSL</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
Enables <acronym>SSL</> connections. Please read Enables <acronym>SSL</> connections. Please read
...@@ -1286,7 +1286,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1286,7 +1286,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>TCPIP_SOCKET (<type>boolean</type>)</term> <term><varname>TCPIP_SOCKET</varname> (<type>boolean</type>)</term>
<listitem> <listitem>
<para> <para>
If this is true, then the server will accept TCP/IP If this is true, then the server will accept TCP/IP
...@@ -1298,7 +1298,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1298,7 +1298,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>UNIX_SOCKET_DIRECTORY (<type>string</type>)</term> <term><varname>UNIX_SOCKET_DIRECTORY</varname> (<type>string</type>)</term>
<listitem> <listitem>
<para> <para>
Specifies the directory of the Unix-domain socket on which the Specifies the directory of the Unix-domain socket on which the
...@@ -1310,7 +1310,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1310,7 +1310,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>UNIX_SOCKET_GROUP (<type>string</type>)</term> <term><varname>UNIX_SOCKET_GROUP</varname> (<type>string</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the group owner of the Unix domain socket. (The owning Sets the group owner of the Unix domain socket. (The owning
...@@ -1326,7 +1326,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1326,7 +1326,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>UNIX_SOCKET_PERMISSIONS (<type>integer</type>)</term> <term><varname>UNIX_SOCKET_PERMISSIONS</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Sets the access permissions of the Unix domain socket. Unix Sets the access permissions of the Unix domain socket. Unix
...@@ -1360,13 +1360,13 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1360,13 +1360,13 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>VIRTUAL_HOST (<type>string</type>)</term> <term><varname>VIRTUAL_HOST</varname> (<type>string</type>)</term>
<listitem> <listitem>
<para> <para>
Specifies the TCP/IP hostname or address on which the Specifies the TCP/IP host name or address on which the
<application>postmaster</application> is to listen for <application>postmaster</application> is to listen for
connections from client applications. Defaults to connections from client applications. Defaults to
listening on all configured addresses (including localhost). listening on all configured addresses (including <systemitem class="systemname">localhost</>).
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
...@@ -1384,10 +1384,10 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1384,10 +1384,10 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term>CHECKPOINT_SEGMENTS (<type>integer</type>)</term> <term><varname>CHECKPOINT_SEGMENTS</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Maximum distance between automatic WAL checkpoints, in logfile Maximum distance between automatic WAL checkpoints, in log file
segments (each segment is normally 16 megabytes). segments (each segment is normally 16 megabytes).
This option can only be set at server start or in the This option can only be set at server start or in the
<filename>postgresql.conf</filename> file. <filename>postgresql.conf</filename> file.
...@@ -1396,7 +1396,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1396,7 +1396,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>CHECKPOINT_TIMEOUT (<type>integer</type>)</term> <term><varname>CHECKPOINT_TIMEOUT</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Maximum time between automatic WAL checkpoints, in seconds. Maximum time between automatic WAL checkpoints, in seconds.
...@@ -1407,7 +1407,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1407,7 +1407,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>COMMIT_DELAY (<type>integer</type>)</term> <term><varname>COMMIT_DELAY</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Time delay between writing a commit record to the WAL buffer and Time delay between writing a commit record to the WAL buffer and
...@@ -1424,7 +1424,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1424,7 +1424,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>COMMIT_SIBLINGS (<type>integer</type>)</term> <term><varname>COMMIT_SIBLINGS</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Minimum number of concurrent open transactions to require before Minimum number of concurrent open transactions to require before
...@@ -1436,7 +1436,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1436,7 +1436,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>WAL_BUFFERS (<type>integer</type>)</term> <term><varname>WAL_BUFFERS</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Number of disk-page buffers in shared memory for WAL log. Number of disk-page buffers in shared memory for WAL log.
...@@ -1446,7 +1446,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1446,7 +1446,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>WAL_DEBUG (<type>integer</type>)</term> <term><varname>WAL_DEBUG</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
If non-zero, turn on WAL-related debugging output on standard If non-zero, turn on WAL-related debugging output on standard
...@@ -1456,7 +1456,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1456,7 +1456,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>WAL_FILES (<type>integer</type>)</term> <term><varname>WAL_FILES</varname> (<type>integer</type>)</term>
<listitem> <listitem>
<para> <para>
Number of log files that are created in advance at checkpoint Number of log files that are created in advance at checkpoint
...@@ -1467,7 +1467,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1467,7 +1467,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>WAL_SYNC_METHOD (<type>string</type>)</term> <term><varname>WAL_SYNC_METHOD</varname> (<type>string</type>)</term>
<listitem> <listitem>
<para> <para>
Method used for forcing WAL updates out to disk. Possible Method used for forcing WAL updates out to disk. Possible
...@@ -1507,71 +1507,71 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1507,71 +1507,71 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
</thead> </thead>
<tbody> <tbody>
<row> <row>
<entry>-B <replaceable>x</replaceable></entry> <entry><option>-B <replaceable>x</replaceable></option></entry>
<entry>shared_buffers = <replaceable>x</replaceable></entry> <entry><literal>shared_buffers = <replaceable>x</replaceable></></entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>-d <replaceable>x</replaceable></entry> <entry><option>-d <replaceable>x</replaceable></option></entry>
<entry>debug_level = <replaceable>x</replaceable></entry> <entry><literal>debug_level = <replaceable>x</replaceable></></entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>-F</entry> <entry><option>-F</option></entry>
<entry>fsync = off</entry> <entry><literal>fsync = off</></entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>-h <replaceable>x</replaceable></entry> <entry><option>-h <replaceable>x</replaceable></option></entry>
<entry>virtual_host = <replaceable>x</replaceable></entry> <entry><literal>virtual_host = <replaceable>x</replaceable></></entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>-i</entry> <entry><option>-i</option></entry>
<entry>tcpip_socket = on</entry> <entry><literal>tcpip_socket = on</></entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>-k <replaceable>x</replaceable></entry> <entry><option>-k <replaceable>x</replaceable></option></entry>
<entry>unix_socket_directory = <replaceable>x</replaceable></entry> <entry><literal>unix_socket_directory = <replaceable>x</replaceable></></entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>-l</entry> <entry><option>-l</option></entry>
<entry>ssl = on</entry> <entry><literal>ssl = on</></entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>-N <replaceable>x</replaceable></entry> <entry><option>-N <replaceable>x</replaceable></option></entry>
<entry>max_connections = <replaceable>x</replaceable></entry> <entry><literal>max_connections = <replaceable>x</replaceable></></entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>-p <replaceable>x</replaceable></entry> <entry><option>-p <replaceable>x</replaceable></option></entry>
<entry>port = <replaceable>x</replaceable></entry> <entry><literal>port = <replaceable>x</replaceable></></entry>
<entry></entry> <entry></entry>
</row> </row>
<row> <row>
<entry>-fi, -fh, -fm, -fn, -fs, -ft</entry> <entry><option>-fi</option>, <option>-fh</option>, <option>-fm</option>, <option>-fn</option>, <option>-fs</option>, <option>-ft</option></entry>
<entry>enable_indexscan=off, enable_hashjoin=off, <entry><literal>enable_indexscan=off</>, <literal>enable_hashjoin=off</>,
enable_mergejoin=off, enable_nestloop=off, enable_seqscan=off, <literal>enable_mergejoin=off</>, <literal>enable_nestloop=off</>, <literal>enable_seqscan=off</>,
enable_tidscan=off</entry> <literal>enable_tidscan=off</></entry>
<entry>*</entry> <entry>*</entry>
</row> </row>
<row> <row>
<entry>-S <replaceable>x</replaceable></entry> <entry><option>-S <replaceable>x</replaceable></option></entry>
<entry>sort_mem = <replaceable>x</replaceable></entry> <entry><literal>sort_mem = <replaceable>x</replaceable></></entry>
<entry>*</entry> <entry>*</entry>
</row> </row>
<row> <row>
<entry>-s</entry> <entry><option>-s</option></entry>
<entry>show_query_stats = on</entry> <entry><literal>show_query_stats = on</></entry>
<entry>*</entry> <entry>*</entry>
</row> </row>
<row> <row>
<entry>-tpa, -tpl, -te</entry> <entry><option>-tpa</option>, <option>-tpl</option>, <option>-te</option></entry>
<entry>show_parser_stats=on, show_planner_stats=on, show_executor_stats=on</entry> <entry><literal>show_parser_stats=on</>, <literal>show_planner_stats=on</>, <literal>show_executor_stats=on</></entry>
<entry>*</entry> <entry>*</entry>
</row> </row>
</tbody> </tbody>
...@@ -1615,11 +1615,11 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1615,11 +1615,11 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<para> <para>
Shared memory and semaphores are collectively referred to as Shared memory and semaphores are collectively referred to as
<quote>System V IPC</> (together with message queues, which are <quote><systemitem class="osname">System V</> <acronym>IPC</></quote> (together with message queues, which are
not relevant for <productname>Postgres</>). Almost all modern not relevant for <productname>Postgres</>). Almost all modern
operating systems provide these features, but not all of them have operating systems provide these features, but not all of them have
them turned on or sufficiently sized by default, especially them turned on or sufficiently sized by default, especially
systems with BSD heritage. (For the QNX and BeOS ports, systems with BSD heritage. (For the <systemitem class="osname">QNX</> and <systemitem class="osname">BeOS</> ports,
<productname>Postgres</> provides its own replacement <productname>Postgres</> provides its own replacement
implementation of these facilities.) implementation of these facilities.)
</para> </para>
...@@ -1633,7 +1633,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1633,7 +1633,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<para> <para>
When <productname>Postgres</> exceeds one of the various hard When <productname>Postgres</> exceeds one of the various hard
limits of the IPC resources then the postmaster will refuse to limits of the <acronym>IPC</> resources then the postmaster will refuse to
start up and should leave a marginally instructive error message start up and should leave a marginally instructive error message
about which problem was encountered and what needs to be done about which problem was encountered and what needs to be done
about it. (See also <xref linkend="postmaster-start-failures">.) about it. (See also <xref linkend="postmaster-start-failures">.)
...@@ -1648,7 +1648,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1648,7 +1648,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<table id="sysvipc-parameters"> <table id="sysvipc-parameters">
<title>System V IPC parameters</> <title><systemitem class="osname">System V</> <acronym>IPC</> parameters</>
<tgroup cols="3"> <tgroup cols="3">
<thead> <thead>
...@@ -1663,7 +1663,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1663,7 +1663,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<row> <row>
<entry><varname>SHMMAX</></> <entry><varname>SHMMAX</></>
<entry>Maximum size of shared memory segment (bytes)</> <entry>Maximum size of shared memory segment (bytes)</>
<entry>250 kB + 8.2kB * buffers + 14.2kB * max_connections or infinity</entry> <entry>250 kB + 8.2kB * <varname>shared_buffers</> + 14.2kB * <varname>max_connections</> or infinity</entry>
</row> </row>
<row> <row>
...@@ -1675,7 +1675,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1675,7 +1675,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<row> <row>
<entry><varname>SHMALL</></> <entry><varname>SHMALL</></>
<entry>Total amount of shared memory available (bytes or pages)</> <entry>Total amount of shared memory available (bytes or pages)</>
<entry>if bytes, same as SHMMAX; if pages, ceil(SHMMAX/PAGE_SIZE)</> <entry>if bytes, same as <varname>SHMMAX</varname>; if pages, <literal>ceil(SHMMAX/PAGE_SIZE)</literal></>
</row> </row>
<row> <row>
...@@ -1693,13 +1693,13 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1693,13 +1693,13 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<row> <row>
<entry><varname>SEMMNI</></> <entry><varname>SEMMNI</></>
<entry>Maximum number of semaphore identifiers (i.e., sets)</> <entry>Maximum number of semaphore identifiers (i.e., sets)</>
<entry>&gt;= ceil(max_connections / 16)</> <entry><literal>&gt;= ceil(max_connections / 16)</literal></>
</row> </row>
<row> <row>
<entry><varname>SEMMNS</></> <entry><varname>SEMMNS</></>
<entry>Maximum number of semaphores system-wide</> <entry>Maximum number of semaphores system-wide</>
<entry>ceil(max_connections / 16) * 17 + room for other applications</> <entry><literal>ceil(max_connections / 16) * 17</literal> + room for other applications</>
</row> </row>
<row> <row>
...@@ -1802,7 +1802,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1802,7 +1802,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term>BSD/OS</> <term><systemitem class="osname">BSD/OS</></term>
<listitem> <listitem>
<formalpara> <formalpara>
<title>Shared Memory</> <title>Shared Memory</>
...@@ -1811,7 +1811,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont ...@@ -1811,7 +1811,7 @@ dynamic_library_path = '/usr/local/lib:/home/my_project/lib:$libdir:$libdir/cont
mind that shared memory is not pageable; it is locked in RAM. mind that shared memory is not pageable; it is locked in RAM.
To increase the number of shared buffers supported by the To increase the number of shared buffers supported by the
postmaster, add the following to your kernel config file. A postmaster, add the following to your kernel configuration file. A
<varname>SHMALL</> value of 1024 represents 4MB of shared <varname>SHMALL</> value of 1024 represents 4MB of shared
memory. The following increases the maximum shared memory area memory. The following increases the maximum shared memory area
to 32 MB: to 32 MB:
...@@ -1827,19 +1827,19 @@ options "SHMMAX=\(SHMALL*PAGE_SIZE\)" ...@@ -1827,19 +1827,19 @@ options "SHMMAX=\(SHMALL*PAGE_SIZE\)"
recompile the kernel, and reboot. For those running earlier recompile the kernel, and reboot. For those running earlier
releases, use <application>bpatch</> to find the releases, use <application>bpatch</> to find the
<varname>sysptsize</> value in the current kernel. This is <varname>sysptsize</> value in the current kernel. This is
computed dynamically at bootup. computed dynamically at boot time.
<screen> <screen>
$ <userinput>bpatch -r sysptsize</> $ <userinput>bpatch -r sysptsize</>
<computeroutput>0x9 = 9</> <computeroutput>0x9 = 9</>
</screen> </screen>
Next, add <varname>SYSPTSIZE</> as a hard-coded value in the Next, add <varname>SYSPTSIZE</> as a hard-coded value in the
kernel config file. Increase the value you found using kernel configuration file. Increase the value you found using
<application>bpatch</>. Add 1 for every additional 4 MB of <application>bpatch</>. Add 1 for every additional 4 MB of
shared memory you desire. shared memory you desire.
<programlisting> <programlisting>
options "SYSPTSIZE=16" options "SYSPTSIZE=16"
</programlisting> </programlisting>
<varname>sysptsize</> can not be changed by sysctl. <varname>sysptsize</> cannot be changed by <command>sysctl</command>.
</para> </para>
<formalpara> <formalpara>
...@@ -1852,7 +1852,7 @@ options "SYSPTSIZE=16" ...@@ -1852,7 +1852,7 @@ options "SYSPTSIZE=16"
</formalpara> </formalpara>
<para> <para>
Set the values you want in your kernel config file, e.g.: Set the values you want in your kernel configuration file, e.g.:
<programlisting> <programlisting>
options "SEMMNI=40" options "SEMMNI=40"
options "SEMMNS=240" options "SEMMNS=240"
...@@ -1865,9 +1865,9 @@ options "SEMMNU=120" ...@@ -1865,9 +1865,9 @@ options "SEMMNU=120"
<varlistentry> <varlistentry>
<term>FreeBSD</term> <term><systemitem class="osname">FreeBSD</></term>
<term>NetBSD</term> <term><systemitem class="osname">NetBSD</></term>
<term>OpenBSD</term> <term><systemitem class="osname">OpenBSD</></term>
<listitem> <listitem>
<para> <para>
The options <varname>SYSVSHM</> and <varname>SYSVSEM</> need The options <varname>SYSVSHM</> and <varname>SYSVSEM</> need
...@@ -1886,7 +1886,8 @@ options SEMMNS=512 ...@@ -1886,7 +1886,8 @@ options SEMMNS=512
options SEMMNU=256 options SEMMNU=256
options SEMMAP=256 options SEMMAP=256
</programlisting> </programlisting>
(On NetBSD and OpenBSD the key word is actually (On <systemitem class="osname">NetBSD</> and <systemitem
class="osname">OpenBSD</> the key word is actually
<literal>option</literal> singular.) <literal>option</literal> singular.)
</para> </para>
</listitem> </listitem>
...@@ -1894,7 +1895,7 @@ options SEMMAP=256 ...@@ -1894,7 +1895,7 @@ options SEMMAP=256
<varlistentry> <varlistentry>
<term>HP-UX</> <term><systemitem class="osname">HP-UX</></term>
<listitem> <listitem>
<para> <para>
The default settings tend to suffice for normal installations. The default settings tend to suffice for normal installations.
...@@ -1903,7 +1904,7 @@ options SEMMAP=256 ...@@ -1903,7 +1904,7 @@ options SEMMAP=256
database sites. database sites.
</para> </para>
<para> <para>
IPC parameters can be set in the <application>System <acronym>IPC</> parameters can be set in the <application>System
Administration Manager</> (<acronym>SAM</>) under Administration Manager</> (<acronym>SAM</>) under
<menuchoice><guimenu>Kernel <menuchoice><guimenu>Kernel
Configuration</><guimenuitem>Configurable Parameters</></>. Configuration</><guimenuitem>Configurable Parameters</></>.
...@@ -1914,7 +1915,7 @@ options SEMMAP=256 ...@@ -1914,7 +1915,7 @@ options SEMMAP=256
<varlistentry> <varlistentry>
<term>Linux</> <term><systemitem class="osname">Linux</></term>
<listitem> <listitem>
<para> <para>
The default shared memory limit (both The default shared memory limit (both
...@@ -1956,7 +1957,7 @@ kernel.shmmax = 134217728 ...@@ -1956,7 +1957,7 @@ kernel.shmmax = 134217728
<varlistentry> <varlistentry>
<term>SCO OpenServer</> <term><systemitem class="osname">SCO OpenServer</></term>
<listitem> <listitem>
<para> <para>
In the default configuration, only 512 kB of shared memory per In the default configuration, only 512 kB of shared memory per
...@@ -1983,7 +1984,7 @@ kernel.shmmax = 134217728 ...@@ -1983,7 +1984,7 @@ kernel.shmmax = 134217728
<varlistentry> <varlistentry>
<term>Solaris</> <term><systemitem class="osname">Solaris</></term>
<listitem> <listitem>
<para> <para>
At least in version 2.6, the maximum size of a shared memory At least in version 2.6, the maximum size of a shared memory
...@@ -2015,7 +2016,7 @@ set semsys:seminfo_semmsl=32 ...@@ -2015,7 +2016,7 @@ set semsys:seminfo_semmsl=32
<varlistentry> <varlistentry>
<term>UnixWare</> <term><systemitem class="osname">UnixWare</></term>
<listitem> <listitem>
<para> <para>
On <productname>UnixWare</> 7, the maximum size for shared On <productname>UnixWare</> 7, the maximum size for shared
...@@ -2064,7 +2065,7 @@ set semsys:seminfo_semmsl=32 ...@@ -2064,7 +2065,7 @@ set semsys:seminfo_semmsl=32
call <function>setrlimit</function> is responsible for setting call <function>setrlimit</function> is responsible for setting
these parameters. The shell's built-in command these parameters. The shell's built-in command
<command>ulimit</command> (Bourne shells) or <command>ulimit</command> (Bourne shells) or
<command>limit</command> (csh) is used to control the resource <command>limit</command> (<application>csh</>) is used to control the resource
limits from the command line. On BSD-derived systems the file limits from the command line. On BSD-derived systems the file
<filename>/etc/login.conf</filename> controls what values the <filename>/etc/login.conf</filename> controls what values the
various resource limits are set to upon login. See various resource limits are set to upon login. See
...@@ -2135,10 +2136,10 @@ default:\ ...@@ -2135,10 +2136,10 @@ default:\
done by what signal you send to the server process. done by what signal you send to the server process.
<variablelist> <variablelist>
<varlistentry> <varlistentry>
<term>SIGTERM</term> <term><systemitem>SIGTERM</systemitem></term>
<listitem> <listitem>
<para> <para>
After receiving SIGTERM, the postmaster disallows new After receiving <systemitem>SIGTERM</systemitem>, the postmaster disallows new
connections, but lets existing backends end their work normally. connections, but lets existing backends end their work normally.
It shuts down only after all of the backends terminate by client It shuts down only after all of the backends terminate by client
request. request.
...@@ -2148,11 +2149,11 @@ default:\ ...@@ -2148,11 +2149,11 @@ default:\
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SIGINT</term> <term><systemitem>SIGINT</systemitem></term>
<listitem> <listitem>
<para> <para>
The postmaster disallows new connections and sends all existing The postmaster disallows new connections and sends all existing
backends SIGTERM, which will cause them to abort their current backends <systemitem>SIGTERM</systemitem>, which will cause them to abort their current
transactions and exit promptly. It then waits for the backends to exit transactions and exit promptly. It then waits for the backends to exit
and finally shuts down the data base. and finally shuts down the data base.
This is the <firstterm>Fast Shutdown</firstterm>. This is the <firstterm>Fast Shutdown</firstterm>.
...@@ -2161,14 +2162,14 @@ default:\ ...@@ -2161,14 +2162,14 @@ default:\
</varlistentry> </varlistentry>
<varlistentry> <varlistentry>
<term>SIGQUIT</term> <term><systemitem>SIGQUIT</systemitem></term>
<listitem> <listitem>
<para> <para>
This is the <firstterm>Immediate Shutdown</firstterm> which This is the <firstterm>Immediate Shutdown</firstterm> which
will cause the postmaster to send a SIGQUIT to all backends and will cause the postmaster to send a <systemitem>SIGQUIT</systemitem> to all backends and
exit immediately (without properly shutting down the database exit immediately (without properly shutting down the database
system). The backends likewise exit immediately upon receiving system). The backends likewise exit immediately upon receiving
SIGQUIT. This will lead to recovery (by replaying the WAL log) <systemitem>SIGQUIT</systemitem>. This will lead to recovery (by replaying the WAL log)
upon next start-up. This is recommended only in emergencies. upon next start-up. This is recommended only in emergencies.
</para> </para>
</listitem> </listitem>
...@@ -2177,13 +2178,13 @@ default:\ ...@@ -2177,13 +2178,13 @@ default:\
<caution> <caution>
<para> <para>
It is best not to use SIGKILL to shut down the postmaster. This It is best not to use <systemitem>SIGKILL</systemitem> to shut down the postmaster. This
will prevent the postmaster from releasing shared memory and will prevent the postmaster from releasing shared memory and
semaphores, which you may then have to do by hand. semaphores, which you may then have to do by hand.
</para> </para>
</caution> </caution>
The PID of the postmaster process can be found using the The <acronym>PID</> of the postmaster process can be found using the
<application>ps</application> program, or from the file <application>ps</application> program, or from the file
<filename>postmaster.pid</filename> in the data directory. So for <filename>postmaster.pid</filename> in the data directory. So for
example, to do a fast shutdown: example, to do a fast shutdown:
...@@ -2239,13 +2240,13 @@ default:\ ...@@ -2239,13 +2240,13 @@ default:\
For details on how to create your server private key and certificate, For details on how to create your server private key and certificate,
refer to the <productname>OpenSSL</> documentation. A simple self-signed refer to the <productname>OpenSSL</> documentation. A simple self-signed
certificate can be used to get started for testing, but a certificate signed certificate can be used to get started for testing, but a certificate signed
by a CA (either one of the global CAs or a local one) should be used in by a <acronym>CA</> (either one of the global <acronym>CAs</> or a local one) should be used in
production so the client can verify the servers identity. To create production so the client can verify the servers identity. To create
a quick self-signed certificate, use the following OpenSSL command: a quick self-signed certificate, use the following <productname>OpenSSL</productname> command:
<programlisting> <programlisting>
openssl req -new -text -out cert.req openssl req -new -text -out cert.req
</programlisting> </programlisting>
Fill out the information that openssl asks for. Make sure that you enter Fill out the information that <command>openssl</> asks for. Make sure that you enter
the local host name as Common Name; the challenge password can be the local host name as Common Name; the challenge password can be
left blank. The script will generate a key that is passphrase protected; left blank. The script will generate a key that is passphrase protected;
it will not accept a pass phrase that is less than four characters long. it will not accept a pass phrase that is less than four characters long.
...@@ -2266,7 +2267,7 @@ cp cert.cert <replaceable>$PGDATA</replaceable>/server.crt ...@@ -2266,7 +2267,7 @@ cp cert.cert <replaceable>$PGDATA</replaceable>/server.crt
</sect1> </sect1>
<sect1 id="ssh-tunnels"> <sect1 id="ssh-tunnels">
<title>Secure TCP/IP Connections with SSH tunnels</title> <title>Secure TCP/IP Connections with <application>SSH</application> tunnels</title>
<indexterm zone="ssh-tunnels"> <indexterm zone="ssh-tunnels">
<primary>ssh</primary> <primary>ssh</primary>
...@@ -2289,10 +2290,10 @@ cp cert.cert <replaceable>$PGDATA</replaceable>/server.crt ...@@ -2289,10 +2290,10 @@ cp cert.cert <replaceable>$PGDATA</replaceable>/server.crt
</para> </para>
<para> <para>
First make sure that an <productname>ssh</productname> server is First make sure that an <application>ssh</application> server is
running properly on the same machine as running properly on the same machine as
<productname>Postgres</productname> and that you can log in using <productname>Postgres</productname> and that you can log in using
ssh as some user. Then you can establish a secure tunnel with a <command>ssh</command> as some user. Then you can establish a secure tunnel with a
command like this from the client machine: command like this from the client machine:
<programlisting> <programlisting>
&gt; <userinput>ssh -L 3333:foo.com:5432 joe@foo.com</userinput> &gt; <userinput>ssh -L 3333:foo.com:5432 joe@foo.com</userinput>
...@@ -2310,8 +2311,8 @@ psql -h localhost -p 3333 template1 ...@@ -2310,8 +2311,8 @@ psql -h localhost -p 3333 template1
To the database server it will then look as though you are really To the database server it will then look as though you are really
user <literal>joe@foo.com</literal> and it will use whatever user <literal>joe@foo.com</literal> and it will use whatever
authentication procedure was set up for this user. In order for the authentication procedure was set up for this user. In order for the
tunnel setup to succeed you must be allowed to connect via ssh as tunnel setup to succeed you must be allowed to connect via <command>ssh</command> as
joe@foo.com, just as if you had attempted to use ssh to set up a <systemitem>joe@foo.com</systemitem>, just as if you had attempted to use <command>ssh</command> to set up a
terminal session. terminal session.
</para> </para>
......
...@@ -39,7 +39,7 @@ CREATE USER <replaceable>name</replaceable> ...@@ -39,7 +39,7 @@ CREATE USER <replaceable>name</replaceable>
<command>initdb</command>) it will have the same name as the <command>initdb</command>) it will have the same name as the
operating system user that initialized the area (and is presumably operating system user that initialized the area (and is presumably
being used as the user that runs the server). Customarily, this user being used as the user that runs the server). Customarily, this user
will be called <quote>postgres</quote>. In order to create more will be called <systemitem>postgres</systemitem>. In order to create more
users you have to first connect as this initial user. users you have to first connect as this initial user.
</para> </para>
...@@ -132,7 +132,7 @@ ALTER GROUP <replaceable>name</replaceable> DROP USER <replaceable>uname1</repla ...@@ -132,7 +132,7 @@ ALTER GROUP <replaceable>name</replaceable> DROP USER <replaceable>uname1</repla
<para> <para>
When a database object is created, it is assigned an owner. The When a database object is created, it is assigned an owner. The
owner is the user that executed the creation statement. There is owner is the user that executed the creation statement. There is
currenty no polished interface for changing the owner of a database currently no polished interface for changing the owner of a database
object. By default, only an owner (or a superuser) can do anything object. By default, only an owner (or a superuser) can do anything
with the object. In order to allow other users to use it, with the object. In order to allow other users to use it,
<firstterm>privileges</firstterm> must be granted. <firstterm>privileges</firstterm> must be granted.
...@@ -169,7 +169,7 @@ GRANT SELECT ON accounts TO GROUP staff; ...@@ -169,7 +169,7 @@ GRANT SELECT ON accounts TO GROUP staff;
REVOKE ALL ON accounts FROM PUBLIC; REVOKE ALL ON accounts FROM PUBLIC;
</programlisting> </programlisting>
The set of privileges held by the table owner is always implicit The set of privileges held by the table owner is always implicit
and is never revokable. and cannot be revoked.
</para> </para>
</sect1> </sect1>
...@@ -179,7 +179,7 @@ REVOKE ALL ON accounts FROM PUBLIC; ...@@ -179,7 +179,7 @@ REVOKE ALL ON accounts FROM PUBLIC;
<para> <para>
Functions and triggers allow users to insert code into the backend Functions and triggers allow users to insert code into the backend
server that other users may execute without knowing it. Hence, both server that other users may execute without knowing it. Hence, both
mechanisms permit users to <firstterm>trojan horse</firstterm> mechanisms permit users to <firstterm>Trojan horse</firstterm>
others with relative impunity. The only real protection is tight others with relative impunity. The only real protection is tight
control over who can define functions (e.g., write to relations control over who can define functions (e.g., write to relations
with SQL fields) and triggers. Audit trails and alerters on the with SQL fields) and triggers. Audit trails and alerters on the
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/wal.sgml,v 1.8 2001/08/25 18:52:41 tgl Exp $ --> <!-- $Header: /cvsroot/pgsql/doc/src/sgml/wal.sgml,v 1.9 2001/09/09 23:52:12 petere Exp $ -->
<chapter id="wal"> <chapter id="wal">
<title>Write-Ahead Logging (<acronym>WAL</acronym>)</title> <title>Write-Ahead Logging (<acronym>WAL</acronym>)</title>
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
The first obvious benefit of using <acronym>WAL</acronym> is a The first obvious benefit of using <acronym>WAL</acronym> is a
significantly reduced number of disk writes, since only the log significantly reduced number of disk writes, since only the log
file needs to be flushed to disk at the time of transaction file needs to be flushed to disk at the time of transaction
commit; in multi-user environments, commits of many transactions commit; in multiuser environments, commits of many transactions
may be accomplished with a single <function>fsync()</function> of may be accomplished with a single <function>fsync()</function> of
the log file. Furthermore, the log file is written sequentially, the log file. Furthermore, the log file is written sequentially,
and so the cost of syncing the log is much less than the cost of and so the cost of syncing the log is much less than the cost of
...@@ -287,7 +287,7 @@ ...@@ -287,7 +287,7 @@
record to the log with <function>LogInsert</function> but before record to the log with <function>LogInsert</function> but before
performing a <function>LogFlush</function>. This delay allows other performing a <function>LogFlush</function>. This delay allows other
backends to add their commit records to the log so as to have all backends to add their commit records to the log so as to have all
of them flushed with a single log sync. No sleep will occur if fsync of them flushed with a single log sync. No sleep will occur if <varname>fsync</varname>
is not enabled or if fewer than <varname>COMMIT_SIBLINGS</varname> is not enabled or if fewer than <varname>COMMIT_SIBLINGS</varname>
other backends are not currently in active transactions; this avoids other backends are not currently in active transactions; this avoids
sleeping when it's unlikely that any other backend will commit soon. sleeping when it's unlikely that any other backend will commit soon.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment