Archiving
archive_mode
Parameter description: Specifies whether to archive WALs.
This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
- When wal_level is set to minimal, the archive_mode parameter is unavailable.
- The archiving function can be enabled on both the synchronous and asynchronous standby nodes. The method of enabling the archiving function is the same as that of enabling the archiving function on a single node. To enable the archiving function, set archive_mode to on and set archive_dest or archive_command correctly.
- If the maximum availability mode is not enabled and the standby node is disconnected from the primary node, the primary node cannot send the archiving location to the standby node due to service congestion. As a result, the archiving fails.
Value range: Boolean
- on indicates that the archiving is enabled.
- off indicates that the archiving is disabled.
Default value: off
archive_command
Parameter description: Specifies the command set by the administrator to archive WALs. You are advised to set the archive log path to an absolute path.
This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
- If both archive_dest and archive_command are configured, WALs are preferentially saved to the directory specified by archive_dest. The command configured by archive_command does not take effect.
- Any %p in the string is replaced by the absolute path of the file to archive, and any %f is replaced by 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. The command example is as follows:
1
archive_command = 'cp --remove-destination %p /mnt/server/archivedir/%f'
- --remove-destination indicates that files will be overwritten during the archiving.
- If there are multiple archive commands, write them to the shell script file and set archive_command to the command for executing the script. The command example is as follows:
-- Assume that multiple commands are as follows: test ! -f dir/%f && cp %p dir/%f -- The content of the test.sh script is as follows: test ! -f dir/$2 && cp $1 dir/$2 -- The archive command is as follows: archive_command='sh dir/test.sh %p %f'
Value range: a string
Default value: (disabled)
archive_dest
Parameter description: Specifies the path set by the administrator to archive WALs. You are advised to set the archive log path to an absolute path.
This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
- If both archive_dest and archive_command are configured, WALs are preferentially saved to the directory specified by archive_dest. The command configured by archive_command does not take effect.
- If the string is a relative path, it is relative to the data directory. The following is an example:
1
archive_dest = '/mnt/server/archivedir/'
Value range: a string
Default value: empty
archive_timeout
Parameter description: Specifies the archiving period.
This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
- The server is forced to switch to a new WAL segment file when the period specified by this parameter has elapsed since the last file switch.
- Archived files that are closed early due to a forced switch are still of the same length as full files. Therefore, a very short archive_timeout will bloat the archive storage. You are advised to set archive_timeout to 60s.
Value range: an integer ranging from 0 to 1073741823. The unit is s. 0 indicates that archiving timeout is disabled.
Default value: 0
archive_interval
Parameter description: Specifies the archiving interval.
This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
- Log files are forcibly archived when the period specified by this parameter has elapsed.
- Archiving involves I/O operations. Therefore, frequent archiving is not allowed. In addition, the RPO cannot be set to a large value; otherwise, the PITR will be affected. You are advised to use the default value.
Value range: an integer ranging from 1 to 1000. The unit is second.
Default value: 1
time_to_target_rpo
Parameter description:
In the remote DR mode of dual database instances, set the allowed time_to_target_rpo seconds from the time when an exception occurs on the primary database instance to the time when data is archived to the OBS recovery point.
This is a SIGHUP parameter. Set it based on instructions provided in Table 1.
Value range: an integer ranging from 0 to 3600. The unit is s.
In remote DR mode of dual database instances, logs of the primary database instance are archived to OBS. 0 indicates that log flow control is disabled. 1 to 3600 indicates the maximum time_to_target_rpo seconds from the time when an exception occurs on the primary database instance to the time when data is archived to the recovery point of OBS. This ensures that the maximum duration of data loss is within the allowed range when the primary database instance breaks down due to a disaster. If this parameter is set to a small value, the performance of the primary node is affected. If it is set to a large value, the log flow is not effectively controlled.
Default value: 0
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot