PostgreSQLLa base de données la plus sophistiquée au monde.

Version anglaise

26.2. Paramètres de cible de récupération

Par défaut, la restauration continuera jusqu'à la fin du dernier journal de transactions. Les paramètres suivants peuvent être utilisés pour spécifier un point d'arrêt précédent. Une des cibles suivantes peut être indiquée : recovery_target, recovery_target_name, recovery_target_time ou recovery_target_xid. Si plus d'un parmi eux est spécifié dans le fichier de configuration, seule la dernière valeur sera conservée.

recovery_target = 'immediate'

Ce paramètre spécifie que la restauration doit se terminer dès que l'état de cohérence est atteint, autrement dit dès que possible. Lors de la restauration à partir d'une sauvegarde en ligne, cela signifie le moment où la sauvegarde s'est terminée.

Au niveau technique, c'est une chaîne de caractères mais 'immediate' est la seule valeur actuellement autorisée.

recovery_target_name (string)

Ce paramètre spécifie le point de restauration nommé (créé précédemment avec la fonction pg_create_restore_point()) où la restauration se terminera.

recovery_target_time (timestamp)

Ce paramètre spécifie l'horodatage (timestamp) jusqu'auquel la récupération se poursuivra. Le point précis d'arrêt dépend aussi de recovery_target_inclusive.

recovery_target_xid (chaîne de caractères)

Ce paramètre spécifie l'identifiant de transaction jusqu'auquel la récupération se poursuivra. Gardez à l'esprit que, bien que les identifiants de transactions sont assignés séquentiellement au démarrage des transactions, elles peuvent se terminer dans un ordre numérique différent. Les transactions qui seront récupérées sont celles qui auront réalisé leur COMMIT avant la transaction spécifiée (optionnellement incluse). Le point précis d'arrêt dépend aussi de recovery_target_inclusive.

Les options suivantes indiquent la cible de restauration et ont un effet sur ce qui arrive une fois la cible atteinte :

recovery_target_inclusive (booléen)

Spécifie si il faut s'arrêter juste après la cible de récupération spécifiée (true), ou juste avant la cible de récupération (false). S'applique quand soit recovery_target_time soit recovery_target_xid est indiqué. Ce paramètre contrôle si les transactions qui ont exactement le même horodatage ou le même identifiant de transaction, respectivement, seront inclues dans la restauration. La valeur par défaut est (true).

recovery_target_timeline (chaîne de caractères)

Spécifie la ligne de temps (timeline) précise sur laquelle effectuer la récupération. Le comportement par défaut est de récupérer sur la même timeline que celle en cours lorsque la sauvegarde de base a été effectuée. Configurer ce paramètre à latest permet de restaurer jusqu'à la dernière ligne de temps disponible dans les archives, ce qui est utile pour un serveur standby. Sinon, vous n'aurez besoin de positionner ce paramètre que dans des cas complexes de re-récupération, où vous aurez besoin d'atteindre un état lui même atteint après une récupération à un moment dans le temps (point-in-time recovery). Voir Section 24.3.5, « Lignes temporelles (Timelines) » pour plus d'informations.

pause_at_recovery_target (boolean)

Spécifie si la restauration doit se mettre en pause quand la cible de restauration est atteinte. La valeur par défaut est true. Cela permet l'exécution de requêtes sur la base de données pour vérifier si la cible de restauration est bien celle souhaitée. L'état de pause peut être annulée en utilisant pg_xlog_replay_resume() (voir Tableau 9.67, « Fonctions de contrôle de la restauration »), ce qui termine la restauration. Si la cible actuelle de restauration ne correspond pas au point d'arrêt souhaité, arrêtez le serveur, modifiez la configuration de la cible de restauration à une cible plus lointaine, et enfin redémarrez pour continuer la restauration.

Cette configuration n'a pas d'effet si hot_standby n'est pas activée ou si une cible de restauration n'est pas configurée.