Accéder au contenu principal
Documents
Gestion des tableaux et des schémasSyntaxe de baseDéclencheursBases de donnéesFonctions de la dateFonctions des chaînes de caractèresFonctions mathématiquesFonctions JSONIndexes

PostgreSQL pg_dump

PostgreSQL `pg_dump` est un utilitaire pour sauvegarder une base de données PostgreSQL. Il génère un fichier texte contenant des commandes SQL qui peuvent recréer la base de données et ses objets, ce qui le rend essentiel pour la sauvegarde et la migration des données.

Utilisation

L'utilitaire `pg_dump` est utilisé pour créer une sauvegarde d'une base de données PostgreSQL. Il est souvent utilisé lorsque vous devez migrer des données, effectuer des sauvegardes de routine ou déplacer des données d'un environnement à l'autre.

shell
pg_dump [options] dbname > outfile

Dans cette syntaxe, `pg_dump` est suivi de diverses options et du `dbname`, indiquant la base de données à sauvegarder, avec la sortie redirigée vers `outfile`. Les options courantes incluent `-U` pour spécifier l'utilisateur et `-h` pour spécifier l'hôte, ce qui offre une certaine flexibilité pour la sauvegarde des bases de données dans différents environnements.

Exemples

1. Sauvegarde de base

shell
pg_dump mydatabase > mydatabase.sql

Cette commande de base crée une sauvegarde de `mydatabase` et la stocke dans un fichier nommé `mydatabase.sql`.

2. Sauvegarde avec compression

shell
pg_dump -Fc mydatabase > mydatabase.dump

Cet exemple utilise l'option `-Fc` pour créer une sauvegarde au format personnalisé, qui est compressée et plus efficace pour les grandes bases de données. Le format personnalisé est flexible pour les restaurations partielles, permettant une restauration sélective des objets de la base de données.

3. Sauvegarde avec un tableau spécifique

shell
pg_dump -t mytable mydatabase > mytable.sql

Ici, l'option `-t` spécifie que seul le tableau `mytable` de `mydatabase` doit être déversé dans `mytable.sql`.

Restauration à partir d'une sauvegarde

Pour restaurer une sauvegarde, vous pouvez utiliser `pg_restore` pour les fichiers au format personnalisé ou `psql` pour les fichiers SQL ordinaires.

Restauration d'une sauvegarde SQL simple

shell
psql -U username -d dbname -f mydatabase.sql

Restauration à partir d'une sauvegarde de format personnalisé

shell
pg_restore -U username -d dbname mydatabase.dump

Conseils et bonnes pratiques

  • Sauvegardes régulières. Planifiez des opérations régulières de `pg_dump` pour vous assurer que vous avez toujours des sauvegardes à jour.
  • Utilisez un format personnalisé pour les grandes bases de données. Le format personnalisé (`-Fc`) est plus efficace et offre une plus grande flexibilité pour les restaurations partielles, ce qui peut être crucial pour les grandes bases de données où vous pouvez avoir besoin de restaurer seulement des parties spécifiques.
  • Testez vos sauvegardes. Restaurer régulièrement les sauvegardes dans un environnement de test afin de garantir l'intégrité et l'exhaustivité des données.
  • Stockage sécurisé. Conservez les sauvegardes dans un endroit sûr pour les protéger contre les accès non autorisés et la perte de données.
  • Taille de sortie du moniteur. Gardez un œil sur la taille de vos décharges afin d'anticiper les besoins de stockage et les problèmes potentiels.

Dépannage des problèmes courants

  • Problèmes de connexion : Assurez-vous que le serveur de base de données fonctionne et est accessible. Utilisez `-h` pour spécifier l'hôte si nécessaire.
  • Permission refusée : Vérifiez les permissions de l'utilisateur et utilisez `-U` pour spécifier un utilisateur avec les droits d'accès nécessaires.
  • Espace disque : Surveillez l'espace disque disponible afin d'éviter les sauvegardes incomplètes en raison d'un manque d'espace.