Comment planifier des sauvegardes automatiques pour PostgreSQL avec pgAgent dans pgAdmin

Comment planifier des sauvegardes automatiques pour PostgreSQL avec pgAgent dans pgAdmin

Introduction

PostgreSQL est un système de gestion de base de données (SGBD) relationnel open source largement utilisé. Pour garantir l’intégrité et la disponibilité des données, il est essentiel de mettre en œuvre une stratégie de sauvegarde automatique fiable. pgAgent est un outil intégré à pgAdmin, une interface graphique de gestion PostgreSQL, qui permet de planifier des sauvegardes et d’autres tâches automatisées. Dans cet article, nous allons vous guider étape par étape sur la façon de configurer des sauvegardes automatiques pour PostgreSQL à l’aide de pgAgent.

Configuration de pgAgent

1. Activer pgAgent

Pour commencer, assurez-vous que pgAgent est activé dans votre installation PostgreSQL. Exécutez la commande suivante dans une fenêtre de terminal :

sql
ALTER SYSTEM SET pgagent.start_on_boot TO 'on';
ALTER SYSTEM SET pgagent.log TO 'on';

* Le premier paramètre active le démarrage automatique de pgAgent au démarrage du serveur.
* Le deuxième paramètre active la journalisation des activités de pgAgent.

2. Créer un schéma d’agent

Les tâches planifiées dans pgAgent sont organisées en schémas. Créez un schéma pour vos tâches de sauvegarde :

sql
CREATE SCHEMA IF NOT EXISTS backups;

3. Créer un compte d’agent

Un compte d’agent est nécessaire pour exécuter les tâches pgAgent. Créez un compte avec les privilèges appropriés :

sql
CREATE ROLE backups WITH LOGIN PASSWORD 'motdepasse';
GRANT usage ON SCHEMA backups TO backups;

Planification des sauvegardes automatiques

1. Créer une tâche de sauvegarde

Dans l’interface pgAdmin, accédez à l’arborescence des objets et sélectionnez le serveur PostgreSQL pour lequel vous souhaitez planifier les sauvegardes. Cliquez avec le bouton droit de la souris et sélectionnez Créer* > *Agent dans le menu contextuel.

Dans la boîte de dialogue Créer un agent, procédez comme suit :

* Nom : Attribuez un nom à la tâche de sauvegarde.
* Schéma : Sélectionnez le schéma backups créé précédemment.
* Propriétaire : Sélectionnez le compte d’agent backups.
* Commentaire : Ajoutez une description facultative.

2. Configurer les paramètres de sauvegarde

Dans l’onglet Tâche, configurez les paramètres de sauvegarde :

* Nom de la tâche : Entrez un nom pour l’action de sauvegarde.
Type de tâche :** Sélectionnez *Archivage dans le menu déroulant.
* Commande : Entrez la commande de sauvegarde. Par exemple :


pg_dump -U postgres -Fc --file=/chemin/vers/sauvegarde.sql basededonnees

* arguments : Spécifiez les arguments supplémentaires pour la commande de sauvegarde, le cas échéant.
* Exécuter : Sélectionnez une option pour déterminer la fréquence d’exécution de la tâche (par exemple, quotidiennement, hebdomadairement).
* Heure de début : Définissez l’heure de début de la première exécution de la tâche.

3. Enregistrer et activer la tâche

Après avoir configuré les paramètres, enregistrez et activez la tâche :

* Enregistrer pour enregistrer la tâche sans l’activer.
* Appliquer pour enregistrer et activer la tâche.

Vérification des sauvegardes

Une fois la tâche de sauvegarde activée, pgAgent effectuera des sauvegardes automatiques selon le calendrier spécifié. Vous pouvez vérifier l’état des sauvegardes dans la section Tâches* de la boîte de dialogue *Agent.

* Succès : La sauvegarde s’est exécutée avec succès.
* Échec : La sauvegarde a échoué. Vérifiez les journaux pgAgent pour plus d’informations.
* En cours : La sauvegarde est en cours d’exécution.

Conclusion

La mise en place de sauvegardes automatiques pour PostgreSQL à l’aide de pgAgent garantit la protection de vos données critiques contre la perte ou la corruption. En suivant les étapes décrites dans cet article, vous pouvez configurer des sauvegardes planifiées et fiables pour votre base de données PostgreSQL, vous assurant ainsi la tranquillité d’esprit et la disponibilité continue des données.

FAQ

1. Comment puis-je modifier les paramètres de sauvegarde après avoir créé une tâche ?
* Modifiez la tâche dans la boîte de dialogue Agent de pgAdmin et apportez les modifications nécessaires.

2. Puis-je planifier des sauvegardes pour plusieurs bases de données ?
* Oui, créez une tâche de sauvegarde distincte pour chaque base de données.

3. Comment restaurer une base de données à partir d’une sauvegarde ?
* Utilisez la commande de restauration pg_restore pour restaurer la base de données depuis le fichier de sauvegarde.

4. Où sont stockés les fichiers de sauvegarde pgAgent ?
* Les fichiers de sauvegarde sont stockés à l’emplacement spécifié dans la commande de sauvegarde.

5. Comment puis-je surveiller les tâches pgAgent ?
Vérifiez la section Tâches** de la boîte de dialogue *Agent de pgAdmin.

6. Est-il possible de sauvegarder des données dans un service de stockage cloud ?
* Oui, utilisez les arguments de commande pg_dump pour spécifier un emplacement de stockage cloud.

7. Comment puis-je gérer les tâches pgAgent à distance ?
* Utilisez l’outil de ligne de commande pgagentctl ou l’extension pgagent_admin.

8. Existe-t-il d’autres outils pour planifier des sauvegardes PostgreSQL ?
* Oui, d’autres outils incluent pgBackRest et Barman.