# ------------------------------- # PostgreSQL recovery config file # ------------------------------- # # Edit this file to provide the parameters that PostgreSQL needs to # perform an archive recovery of a database, or to act as a replication # standby. # # If "recovery.conf" is present in the PostgreSQL data directory, it is # read on postmaster startup. After successful recovery, it is renamed # to "recovery.done" to ensure that we do not accidentally re-enter # archive recovery or standby mode. # # This file consists of lines of the form: # # name = value # # Comments are introduced with '#'. # # The complete list of option names and allowed values can be found # in the PostgreSQL documentation. # #--------------------------------------------------------------------------- # ARCHIVE RECOVERY PARAMETERS #--------------------------------------------------------------------------- # # restore_command # # specifies the shell command that is executed to copy log files # back from archival storage. The command string may contain %f, # which is replaced by the name of the desired log file, and %p, # which is replaced by the absolute path to copy the log file to. # # This parameter is *required* for an archive recovery, but optional # for streaming replication. # # It is important that the command return nonzero exit status on failure. # The command *will* be asked for log files that are not present in the # archive; it must return nonzero when so asked. # # NOTE that the basename of %p will be different from %f; do not # expect them to be interchangeable. # #restore_command = '' # e.g. 'cp /mnt/server/archivedir/%f %p' # # # archive_cleanup_command # # specifies an optional shell command to execute at every restartpoint. # This can be useful for cleaning up the archive of a standby server. # #archive_cleanup_command = '' # # recovery_end_command # # specifies an optional shell command to execute at completion of recovery. # This can be useful for cleaning up after the restore_command. # #recovery_end_command = '' # #--------------------------------------------------------------------------- # RECOVERY TARGET PARAMETERS #--------------------------------------------------------------------------- # # By default, recovery will rollforward to the end of the WAL log. # If you want to stop rollforward at a specific point, you # must set a recovery target. # # You may set a recovery target either by transactionId, by name, # or by timestamp. Recovery may either include or exclude the # transaction(s) with the recovery target value (ie, stop either # just after or just before the given target, respectively). # # #recovery_target_name = '' # e.g. 'daily backup 2011-01-26' # #recovery_target_time = '' # e.g. '2004-07-14 22:39:00 EST' # #recovery_target_xid = '' # #recovery_target_inclusive = true # # # Alternatively, you can request stopping as soon as a consistent state # is reached, by uncommenting this option. # #recovery_target = 'immediate' # # # If you want to recover into a timeline other than the "main line" shown in # pg_control, specify the timeline number here, or write 'latest' to get # the latest branch for which there's a history file. # #recovery_target_timeline = 'latest' # # # If pause_at_recovery_target is enabled, recovery will pause when # the recovery target is reached. The pause state will continue until # pg_xlog_replay_resume() is called. This setting has no effect if # hot standby is not enabled, or if no recovery target is set. # #pause_at_recovery_target = true # #--------------------------------------------------------------------------- # STANDBY SERVER PARAMETERS #--------------------------------------------------------------------------- # # standby_mode # # When standby_mode is enabled, the PostgreSQL server will work as a # standby. It will continuously wait for the additional XLOG records, using # restore_command and/or primary_conninfo. # #standby_mode = off # # primary_conninfo # # If set, the PostgreSQL server will try to connect to the primary using this # connection string and receive XLOG records continuously. # #primary_conninfo = '' # e.g. 'host=localhost port=5432' # # If set, the PostgreSQL server will use the specified replication slot when # connecting to the primary via streaming replication to control resource # removal on the upstream node. This setting has no effect if primary_conninfo # is not set. # #primary_slot_name = '' # # By default, a standby server keeps restoring XLOG records from the # primary indefinitely. If you want to stop the standby mode, finish recovery # and open the system in read/write mode, specify a path to a trigger file. # The server will poll the trigger file path periodically and start as a # primary server when it's found. # #trigger_file = '' # # By default, a standby server restores XLOG records from the primary as # soon as possible. If you want to explicitly delay the replay of committed # transactions from the master, specify a minimum apply delay. For example, # if you set this parameter to 5min, the standby will replay each transaction # commit only when the system time on the standby is at least five minutes # past the commit time reported by the master. # #recovery_min_apply_delay = 0 # #--------------------------------------------------------------------------- # HOT STANDBY PARAMETERS #--------------------------------------------------------------------------- # # Hot Standby related parameters are listed in postgresql.conf # #---------------------------------------------------------------------------