--- /dev/null
+
+
+
+
Recovery Configuration
+
+
+ of recovery
+ of a standby server
+
+
+ This chapter describes the settings available in
+ recovery.conf> file. They apply only for the duration of
+ the recovery. (A sample file, share/recovery.conf.sample>,
+ exists in the installation's share/> directory.) They must
+ be reset for any subsequent recovery you wish to perform. They cannot
+ be changed once recovery has begun.
+
+
+
+
+
Archive recovery settings
+
+
+
+ restore_command (string)
+
+ The shell command to execute to retrieve an archived segment of
+ the WAL file series. This parameter is required for archive recovery,
+ but optional for streaming replication.
+ Any %f> in the string is
+ replaced by the name of the file to retrieve from the archive,
+ and any %p> is replaced by the copy destination path name
+ on the server.
+ (The path name is relative to the current working directory,
+ i.e., the cluster's data directory.)
+ Any %r> is replaced by the name of the file containing the
+ last valid restart point. That is the earliest file that must be kept
+ to allow a restore to be restartable, so this information can be used
+ to truncate the archive to just the minimum required to support
+ restarting from the current restore. %r> is typically only
+ used by warm-standby configurations
+ (see ).
+ Write %%> to embed an actual %> character.
+
+
+ It is important for the command to return a zero exit status
+ only if it succeeds. The command will> be asked for file
+ names that are not present in the archive; it must return nonzero
+ when so asked. Examples:
+restore_command = 'cp /mnt/server/archivedir/%f "%p"'
+restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows
+
+
+
+
+
+
+ recovery_end_command (string)
+
+ This parameter specifies a shell command that will be executed once only
+ at the end of recovery. This parameter is optional. The purpose of the
+ recovery_end_command> is to provide a mechanism for cleanup
+ following replication or recovery.
+ Any %r> is replaced by the name of the file
+ containing the last valid restart point. That is the earliest file that
+ must be kept to allow a restore to be restartable, so this information
+ can be used to truncate the archive to just the minimum required to
+ support restart from the current restore. %r> would
+ typically be used in a warm-standby configuration
+ (see ).
+ Write %%> to embed an actual %> character
+ in the command.
+
+ If the command returns a non-zero exit status then a WARNING log
+ message will be written and the database will proceed to start up
+ anyway. An exception is that if the command was terminated by a
+ signal, the database will not proceed with startup.
+
+
+
+
+
+
+
+
+
+
+
Recovery target settings
+
+
+
+ recovery_target_time
+ (timestamp)
+
+
+ This parameter specifies the time stamp up to which recovery
+ will proceed.
+ At most one of recovery_target_time> and
+ can be specified.
+ The default is to recover to the end of the WAL log.
+ The precise stopping point is also influenced by
+ .
+
+
+
+
+
+ recovery_target_xid (string)
+
+ This parameter specifies the transaction ID up to which recovery
+ will proceed. Keep in mind
+ that while transaction IDs are assigned sequentially at transaction
+ start, transactions can complete in a different numeric order.
+ The transactions that will be recovered are those that committed
+ before (and optionally including) the specified one.
+ At most one of recovery_target_xid> and
+ can be specified.
+ The default is to recover to the end of the WAL log.
+ The precise stopping point is also influenced by
+ .
+
+
+
+
+
+ xreflabel="recovery_target_inclusive">
+ recovery_target_inclusive
+ (boolean)
+
+
+ Specifies whether we stop just after the specified recovery target
+ (true), or just before the recovery target
+ (false).
+ Applies to both
+ and , whichever one is
+ specified for this recovery. This indicates whether transactions
+ having exactly the target commit time or ID, respectively, will
+ be included in the recovery. Default is true>.
+
+
+
+
+
+ xreflabel="recovery_target_timeline">
+ recovery_target_timeline
+ (string)
+
+
+ Specifies recovering into a particular timeline. The default is
+ to recover along the same timeline that was current when the
+ base backup was taken. You only need to set this parameter
+ in complex re-recovery situations, where you need to return to
+ a state that itself was reached after a point-in-time recovery.
+ See for discussion.
+
+
+
+
+
+
+
+
+
+
Standby server settings
+
+
+
+ standby_mode (boolean)
+
+ Specifies whether to start the
PostgreSQL> server as
+ a standby. If this parameter is on>, the server will
+ not end recovery when the end of archived WAL is reached, but
+ will keep trying to continue recovery using restore_command>
+ and by connecting to the primary server as specified by the
+ primary_conninfo> setting.
+
+
+
+
+ primary_conninfo (string)
+
+ Specifies a connection string to be used for the standby server
+ to connect with the primary. This string is in the same format as
+ described in . If any option is
+ unspecified in this string, then the corresponding environment
+ variable (see ) is checked. If the
+ environment variable is not set either, then
+ defaults are used.
+
+ The built-in replication requires that a host name (or host address)
+ or port number which the primary server listens on be
+ specified in this string. Also ensure that a role with
+ the SUPERUSER> and LOGIN> privileges on the
+ primary is set (see
+ ). Note that
+ the password needs to be set if the primary demands password
+ authentication.
+
+ This setting has no effect if standby_mode> is off>.
+
+
+
+
+ trigger_file (string)
+
+ Specifies a trigger file whose presence ends recovery in the
+ standby. If no trigger file is specified, the standby never exits
+ recovery.
+ This setting has no effect if standby_mode> is off>.
+
+
+
+
+
+
+
+