Archiving¶
archive_mode¶
Parameter description: When archive_mode is enabled, completed WAL segments are sent to archive storage by setting archive_command.
Type: SIGHUP
Value range: Boolean
on: The archiving is enabled.
off: The archiving is disabled.
Default value: off
Important
When wal_level is set to minimal, archive_mode cannot be used.
archive_command¶
Parameter description: Specifies the command used to archive WALs set by the administrator. You are advised to set the archive log path to an absolute path.
Type: SIGHUP
Value range: a string
Default value: (disabled)
Important
Any %p in the string is replaced with the absolute path of the file to archive, and any %f is replaced with only the file name. (The relative path is relative to the data directory.) Use %% to embed an actual % character in the command.
This command returns zero only if it succeeds. Example:
archive_command = 'cp --remove-destination %p /mnt/server/archivedir/%f' archive_command = 'copy %p /mnt/server/archivedir/%f' # Windows
--remove-destination indicates that files will be overwritten during the archiving.
When archive_mode is set to on or not specified, a backup folder will be created in the pg_xlog directory and WALs will be compressed and copied to the pg_xlog/backup directory.
archive_timeout¶
Parameter description: Specifies the archiving period.
Type: SIGHUP
Value range: an integer ranging from 0 to INT_MAX. The unit is second. 0 indicates that archiving timeout is disabled.
Default value: 0
Important
The server is forced to switch to a new WAL segment file with the period specified by this parameter.
Archived files that are closed early due to a forced switch are still of the same length as completely full files. Therefore, a very short archive_timeout will bloat the archive storage. You are advised to set archive_timeout to 60s.