IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PostgreSQL Discussion :

outils de "backup " de base de données


Sujet :

PostgreSQL

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 7
    Points
    7
    Par défaut outils de "backup " de base de données
    salut,
    je cherche une solution de sauvegarde à distance et automatique de base de données postgresql. j'aimerai savoir si des outils existent déjà pour cela, ou si je dois écrire des scripts shell ou des programmes (avoir un outil de developpement comme VB ou C ). et si possible envoyer moi un exemple de script de sauvegarde de base de données
    nb: le format de base de données n'est pas important).
    merci d'avance pour votre aide.

  2. #2
    Membre émérite
    Avatar de hpalpha
    Inscrit en
    Mars 2002
    Messages
    769
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 769
    Points : 2 545
    Points
    2 545
    Par défaut
    Bonsoir,
    de quel type de serveur dont tu dispose (linux, nt, ..)
    j'ai fait un petit script bash au boulot vraiment bidon ( un pg_dump + cron + scp ), ca fonctionne tres bien :
    la tache cron est programmée chaque matin pour faire un vaccum puis un pg_dump en mode compressé, je garde le fichier bak en local et apres je fais un scp du fichier sur un autre serveur.
    Resultat, j'ai 2 fichiers identiques sur 2 serveurs differents.

  3. #3
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 7
    Points
    7
    Par défaut sript de sauvegarde automatique
    merci hpalpha pour ta "premiere reponse à ma préoccupation; pour repondre à ta question, j'utilise un sereur linux (de préférence debian).
    j'attend donc la suite de ta reponse. je t'en pris envois mois un exemple de script déjà écrit à cet effet.

    NB: excuse moi pour avoir mis du temps avant de repondre à ta question

  4. #4
    Membre habitué
    Inscrit en
    Janvier 2004
    Messages
    532
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 532
    Points : 144
    Points
    144
    Par défaut
    moi aussi cela m interesserai de voir ton script .

    Merci

  5. #5
    Membre émérite
    Avatar de hpalpha
    Inscrit en
    Mars 2002
    Messages
    769
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 769
    Points : 2 545
    Points
    2 545
    Par défaut
    de retour sur le forum

    Le script est par exemple savmacdo.bat.
    je le place dans une tache cron pour quelle s'execute tout les jours à 6h
    (0 6 * * * /datas/hd137Go/postgresql/batchs/savmacdo.bat)

    Fichier : /datas/hd137Go/postgresql/batchs/savmacdo.bat
    /***********************************************************************************************************/
    #!/bin/sh
    psql -d macdo -f /datas/hd137Go/postgresql/batchs/vacuum.sql
    pg_dump macdo -h 192.168.1.10 -U postgres -f /datas/hd137Go/postgresql/backups/macdo.bak -C -F c
    scp -B -C /datas/hd137Go/postgresql/backups/macdo.bak backup@192.168.1.11:/datas/replication/pg/macdo.bak

    /***********************************************************************************************************/

    la 1ere commande fait un vaccum de la base et eventuellement d'autres traitements
    fichier vacuum.sql :
    /***********************************************************************************************************/
    VACUUM;
    /***********************************************************************************************************/

    la 2eme commande fait le dump a proprement parler, je le fais en mode compressé

    la 3eme commande fait la copie sur un autre serveur.
    je copie mon fichier sur le serveur 192.1681.11 avec le login backup

    Juste pour infos, pour pas que scp me demande le pass :
    je fais un ssh-keygen rsa
    --> ca me genere 2 fichiers : ~/.ssh/id_rsa et ~/.ssh/id_rsa.pub
    je donne la clef publique a mon 2eme serveur
    scp ~/.ssh/id_rsa.pub backup@192.168.1.11:~/.ssh/autorized_keys
    sur le 2eme serveur, je verouille les droits sur fichier
    chmod 0600 ~/.ssh/autorized_keys

  6. #6
    Membre habitué
    Inscrit en
    Janvier 2004
    Messages
    532
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 532
    Points : 144
    Points
    144
    Par défaut
    j y connais pas grand chose en .bat donc je colle cela dans un .txt et je sauvergarde en .bat et logiquement avec le cron sa marchera

    (0 6 * * * /datas/hd137Go/postgresql/batchs/savmacdo.bat)

    Fichier : /datas/hd137Go/postgresql/batchs/savmacdo.bat
    /***********************************************************************************************************/
    #!/bin/sh
    psql -d macdo -f /datas/hd137Go/postgresql/batchs/vacuum.sql
    pg_dump macdo -h 192.168.1.10 -U postgres -f /datas/hd137Go/postgresql/backups/macdo.bak -C -F c
    scp -B -C /datas/hd137Go/postgresql/backups/macdo.bak backup@192.168.1.11:/datas/replication/pg/macdo.bak
    /***********************************************************************************************************/

    la 1ere commande fait un vaccum de la base et eventuellement d'autres traitements
    fichier vacuum.sql :
    /***********************************************************************************************************/
    VACUUM;
    /***********************************************************************************************************/

  7. #7
    Membre émérite
    Avatar de hpalpha
    Inscrit en
    Mars 2002
    Messages
    769
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 769
    Points : 2 545
    Points
    2 545
    Par défaut
    euh nan pas vraiment

    il y a plusieurs fichiers, et le chemin c'est a toi d'adapter en fonction de tes fichiers.

    j'ai un batch qui me fait tout le boulot :
    #!/bin/sh
    psql -d macdo -f /datas/hd137Go/postgresql/batchs/vacuum.sql
    pg_dump macdo -h 192.168.1.10 -U postgres -f /datas/hd137Go/postgresql/backups/macdo.bak -C -F c
    scp -B -C /datas/hd137Go/postgresql/backups/macdo.bak backup@192.168.1.11:/datas/replication/pg/macdo.bak

  8. #8
    Membre habitué
    Inscrit en
    Janvier 2004
    Messages
    532
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 532
    Points : 144
    Points
    144
    Par défaut
    ok
    donc j adapte ce que tu à ecris en vert en fonction de ma base et du nom des fichier dans lequel je veux faire une sauvegarde

  9. #9
    Membre actif

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2003
    Messages : 209
    Points : 249
    Points
    249
    Par défaut
    Je fais exactement la même chose que hpalpha: si tu veux donner un nom à ton fichier avec la date et l'heure tu peux modifier ton pg_dump. Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pg_dump -C -d -U pgsql -Z 9 maBase> /tralala/maBase.`date "+%Y%m%d.%H%M"`.gz;
    A+

  10. #10
    Membre habitué
    Inscrit en
    Janvier 2004
    Messages
    532
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 532
    Points : 144
    Points
    144
    Par défaut
    ok
    merci me reste plus qu à trouver, de la doc sur comment fonctionne cron

  11. #11
    Membre habitué
    Inscrit en
    Janvier 2004
    Messages
    532
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 532
    Points : 144
    Points
    144
    Par défaut
    et pour reimporter c est pgrestore

  12. #12
    Membre averti
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Septembre 2003
    Messages
    302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant ERP
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2003
    Messages : 302
    Points : 331
    Points
    331
    Par défaut
    pour la doc sur cron et crontab : man cron

Discussions similaires

  1. Quel outil utilisez vous pour concevoir vos bases de données
    Par Matthieu Brucher dans le forum Outils
    Réponses: 93
    Dernier message: 01/08/2014, 16h20
  2. Tenir des versions Backups de ma base de données
    Par HYQST dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/06/2006, 18h07
  3. Quel Outil pour les applis Industrielles ET bases de données
    Par ThierryAIM dans le forum Débats sur le développement - Le Best Of
    Réponses: 8
    Dernier message: 23/04/2003, 10h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo