Home Explore Blog CI



postgresql

doc/src/sgml/basic-archive.sgml
dc464d3ca2f5ca2306ec8704b1449d8228ba303eda9bc3cd00000003000009c9
<!-- doc/src/sgml/basic-archive.sgml -->

<sect1 id="basic-archive" xreflabel="basic_archive">
 <title>basic_archive &amp;mdash; an example WAL archive module</title>

 <indexterm zone="basic-archive">
  <primary>basic_archive</primary>
 </indexterm>

 <para>
  <filename>basic_archive</filename> is an example of an archive module.  This
  module copies completed WAL segment files to the specified directory.  This
  may not be especially useful, but it can serve as a starting point for
  developing your own archive module.  For more information about archive
  modules, see <xref linkend="archive-modules"/>.
 </para>

 <para>
  In order to function, this module must be loaded via
  <xref linkend="guc-archive-library"/>, and <xref linkend="guc-archive-mode"/>
  must be enabled.
 </para>

 <sect2 id="basic-archive-configuration-parameters">
  <title>Configuration Parameters</title>

  <variablelist>
   <varlistentry>
    <term>
     <varname>basic_archive.archive_directory</varname> (<type>string</type>)
     <indexterm>
      <primary><varname>basic_archive.archive_directory</varname> configuration parameter</primary>
     </indexterm>
    </term>
    <listitem>
     <para>
      The directory where the server should copy WAL segment files.  This
      directory must already exist.  The default is an empty string, which
      effectively halts WAL archiving, but if <xref linkend="guc-archive-mode"/>
      is enabled, the server will accumulate WAL segment files in the
      expectation that a value will soon be provided.
     </para>
    </listitem>
   </varlistentry>
  </variablelist>

  <para>
   These parameters must be set in <filename>postgresql.conf</filename>.
   Typical usage might be:
  </para>

<programlisting>
# postgresql.conf
archive_mode = 'on'
archive_library = 'basic_archive'
basic_archive.archive_directory = '/path/to/archive/directory'
</programlisting>
 </sect2>

 <sect2 id="basic-archive-notes">
  <title>Notes</title>

  <para>
   Server crashes may leave temporary files with the prefix
   <filename>archtemp</filename> in the archive directory.  It is recommended to
   delete such files before restarting the server after a crash.  It is safe to
   remove such files while the server is running as long as they are unrelated
   to any archiving still in progress, but users should use extra caution when
   doing so.
  </para>
 </sect2>

 <sect2 id="basic-archive-author">
  <title>Author</title>

  <para>
   Nathan Bossart
  </para>
 </sect2>

</sect1>

Chunks
d880effc (1st chunk of `doc/src/sgml/basic-archive.sgml`)
Title: basic_archive: An Example WAL Archive Module
Summary
The `basic_archive` module is a sample archive module that copies completed WAL segment files to a specified directory. It needs to be loaded via `archive_library` and requires `archive_mode` to be enabled. The module has a configuration parameter, `basic_archive.archive_directory`, which specifies the destination directory for the WAL files. The documentation also includes a note about handling temporary files (`archtemp`) in the archive directory after a server crash.