PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 02/10/2012 09:59:19

zbdd
Membre

sauvgarde des données en sql

Bonjour,

je m'adresse vers vous pour m'aider à réaliser une sauvegarde de ma basse de donnée en format sql

autrement dit quand j'exécute le code sql je reproduit la même base de donnée de A à z les table enfaite tout

comment doit-je faire ...j'ai lu la doc et je sais qu'il faut utiliser "pg_dump " mais je n'arrive toujours pas je cherche une petite explication simple avec des etapes à suivre.

Merci encore

Dernière modification par zbdd (02/10/2012 10:04:54)

Hors ligne

#2 02/10/2012 10:27:07

kenrio
Membre

Re : sauvgarde des données en sql

Bonjour,

je vois pas ce qu'on peut dire de plus, la doc : http://www.postgresql.org/docs/9.1/stat … gdump.html est très bien faite, si vous avez des erreurs mettez les nous au moins.

Hors ligne

#3 02/10/2012 11:08:04

zbdd
Membre

Re : sauvgarde des données en sql

kenrio a écrit :

Bonjour,

je vois pas ce qu'on peut dire de plus, la doc : http://www.postgresql.org/docs/9.1/stat … gdump.html est très bien faite, si vous avez des erreurs mettez les nous au moins.

ma question est un peu bête mais je ne sais pas ou il fait taper ceci :

pg_restore.exe -h localhost -p 5432 -U postgres -d mabase-v "C:\Temp\mabase.backup"

A+

Dernière modification par zbdd (02/10/2012 11:11:20)

Hors ligne

#4 02/10/2012 11:09:46

zbdd
Membre

Re : sauvgarde des données en sql

kenrio a écrit :

Bonjour,

je vois pas ce qu'on peut dire de plus, la doc : http://www.postgresql.org/docs/9.1/stat … gdump.html est très bien faite, si vous avez des erreurs mettez les nous au moins.

ma question va etre un bete mais je ne sais pas ou il fait taper ceci :

pg_restore.exe -h localhost -p 5432 -U postgres -d mabase-v "C:\Temp\mabase.backup"

A+

Hors ligne

#5 02/10/2012 11:11:44

zbdd
Membre

Re : sauvgarde des données en sql

zbdd a écrit :
kenrio a écrit :

Bonjour,

je vois pas ce qu'on peut dire de plus, la doc : http://www.postgresql.org/docs/9.1/stat … gdump.html est très bien faite, si vous avez des erreurs mettez les nous au moins.

ma question est un peu bête mais je ne sais pas ou il fait taper ceci :

pg_restore.exe -h localhost -p 5432 -U postgres -d mabase-v "C:\Temp\mabase.backup"

A+

Hors ligne

#6 02/10/2012 11:11:52

MitsuTomoe
Membre

Re : sauvgarde des données en sql

Si ça peut aider, voici la procédure de sauvegarde qui tourne chez nous (Ubuntu 12.04) :

DATE=$(date +%Y-%m-%d-%H-%M)
rm -f /var/lib/postgresql/conclavi_test.sql

pg_dumpall > /var/lib/postgresql/conclavi_test.sql

rm -f /var/lib/postgresql/backups/conclavi_test*.*
mv conclavi_test.sql /var/lib/postgresql/backups/conclavi_test-${DATE}.sql

tar -jcvf /var/lib/postgresql/backups/conclavi_test-${DATE}.bz2 /var/lib/postgresql/backups/conclavi_test-${DATE}.sql

echo 'Copie FTP'
ftp -in <<THEEND
open monftp
user monuser monpasswd
lcd backups
cd base-test
put conclavi_test-${DATE}.bz2
close
bye
THEEND

L'avantage de pg_dumpall est qu'il sauvegarde un cluster complet (rôles, bases...) .

Hors ligne

#7 02/10/2012 11:12:08

kenrio
Membre

Re : sauvgarde des données en sql

Vu que vous êtes sur windows, vous ouvrez un cmd et vous tapez la ligne de commande.

ps : windows -> executer -> tapez "cmd"

Hors ligne

#8 02/10/2012 12:40:50

zbdd
Membre

Re : sauvgarde des données en sql

MitsuTomoe a écrit :

Si ça peut aider, voici la procédure de sauvegarde qui tourne chez nous (Ubuntu 12.04) :

DATE=$(date +%Y-%m-%d-%H-%M)
rm -f /var/lib/postgresql/conclavi_test.sql

pg_dumpall > /var/lib/postgresql/conclavi_test.sql

rm -f /var/lib/postgresql/backups/conclavi_test*.*
mv conclavi_test.sql /var/lib/postgresql/backups/conclavi_test-${DATE}.sql

tar -jcvf /var/lib/postgresql/backups/conclavi_test-${DATE}.bz2 /var/lib/postgresql/backups/conclavi_test-${DATE}.sql

echo 'Copie FTP'
ftp -in <<THEEND
open monftp
user monuser monpasswd
lcd backups
cd base-test
put conclavi_test-${DATE}.bz2
close
bye
THEEND

L'avantage de pg_dumpall est qu'il sauvegarde un cluster complet (rôles, bases...) .



Merci pour la réponse donc si je comprends bien je dois taper ceci sur la la fenetre cmd...du windows 
mais coment ça marche  ...veuillez m'excuser mais je suis un peu perdu.:(

Hors ligne

#9 03/10/2012 08:48:08

gleu
Administrateur

Re : sauvgarde des données en sql

Nous aussi pour être franc, je ne vois pas trop ce qu'on peut vous dire de plus. Il vous suffit de taper la commande pg_dump. Un simple "pg_dump labase > mon_fichier" suffit.

Hors ligne

#10 03/10/2012 09:41:23

zbdd
Membre

Re : sauvgarde des données en sql

gleu a écrit :

Nous aussi pour être franc, je ne vois pas trop ce qu'on peut vous dire de plus. Il vous suffit de taper la commande pg_dump. Un simple "pg_dump labase > mon_fichier" suffit.


Bonjour,

effectivement c'est simple mais ça bloc chez moi je m'explique:

j'utilise postgresql version 9.1 et sous windows 7 et il est installer par défaut sur le C program files...bref installation par défaut .
quant je veux faire une sauvgarde de ma base de données je procède comme suite :

j'ouvre la comande dos cmd.. et je fais ceci:

c:\Program Files\PostgreSQL\9.1\bin>pg_dump nom_de_mabase > nom_base_save.dump   

et là il me domande d'entré le mot de passe : le problème c'est que je ne peut pas le tapé sur la commade !!!!
et je tape la touche entré un fichier nommé nom_base_save.dump se cree dasn le repertoir du fichier bin mais vide !!!

mes questions sont

1- quelqu'un peut m'expliquer  pourquoi je n'arrive pas à saisir le mot de passe quand m'a été demandé?
2- quelle est la solution de mon problème de sauvgarde

Merci d'avance pour votre aide

Dernière modification par zbdd (03/10/2012 09:41:49)

Hors ligne

#11 03/10/2012 14:39:19

gleu
Administrateur

Re : sauvgarde des données en sql

Pourquoi ne pouvez-vous pas taper le mot de passe ? si vous vous inquiétez qu'il n'apparaisse pas, ni même des étoiles ou d'autres caractères, c'est normal. Saisissez-le, puis faites entré. Que se passe-t-il ensuite ? avez-vous un message d'erreur ?

Hors ligne

#12 04/10/2012 10:26:03

zbdd
Membre

Re : sauvgarde des données en sql

gleu a écrit :

Pourquoi ne pouvez-vous pas taper le mot de passe ? si vous vous inquiétez qu'il n'apparaisse pas, ni même des étoiles ou d'autres caractères, c'est normal. Saisissez-le, puis faites entré. Que se passe-t-il ensuite ? avez-vous un message d'erreur ?

Bonjour,

pour répondre à votre question quant je tape le mot de passe y a rien qui s'affiche sur la ligne et quand je tape entrer  y a mot de passe  erruer ..!!

bref j'ai pu réaliser ma sauvgarde de ma BDD en faisant ceci :

pour sauvgarder :

pg_dump.exe -h localhost -p 5432 -U postgres -F p -v -f "C:\Temp\BDD.backup" BDD


et pour réstaurer je tape ceci :

pg_restore.exe -h localhost -p 5432 -U postgres -d BDD -v "C:\Temp\BDD.backup"

tout marche trés bien sous la comande dos windows 7 et là j'ai une petite question comment automatise ça je m'explique,
comment réaliser un fichier qui sera exécuter par exemple tout les 4heures (ou une heure précise de la journée) automatiquement et qui réalise une sauvegarde de ma base de données.

Merci d'avance de m'avoir aider

A+
zbdd

Dernière modification par zbdd (04/10/2012 10:35:09)

Hors ligne

#13 04/10/2012 12:05:32

gleu
Administrateur

Re : sauvgarde des données en sql

Pour les exécutions automatiques sous Windows, vous devez utiliser les tâches planifiées. Pour automatiser la saisie du mot de passe, vous devez passer par le fichier .pgpass (ou pgpass.conf sous Windows). Vous aurez plus d'informations sur ce fichier à cette adresse : http://docs.postgresqlfr.org/9.2/libpq-pgpass.html

Hors ligne

#14 13/07/2015 01:07:43

jplaroche
Membre

Re : sauvgarde des données en sql

bonjour


un truc qui en depatrouilera plus d'un



sauvegarde


#!/bin/bash
#    
# cp based backup script.
#
echo "bonjour"  

if [! -d "/media/soleil/6528-D95D/SAUVEGARDE" ] 
then  
echo "Branche le lecteur"
exit  1
fi 

echo "bonjour"


	echo -n "Voulez-SAUVEGARDER Y/N : "
	read ouinon
	if [ "$ouinon" = "y" ] || [ "$ouinon" = "Y" ]
		then

		cd /media/soleil/6528-D95D/SAUVEGARDE/ 

 		dat=$(date +%Y%m%d)  
    

		echo "sauvegarde PostgreSQL  CGIFCH"  

		CGIFCH_DATA="CGIFCH_DATA_"$dat".backup" 
		CGIFCH_SCHEMA="CGIFCH_SCHEMA_"$dat".backup" 
 
		echo -n "File PostgreSQL ---  A Sauvegarder :"
		echo "$CGIFCH_DATA"
		echo -n "File PostgreSQL ---  A Sauvegarder :"
		echo "$CGIFCH_SCHEMA"
# DATA
		 pg_dump     --format custom -a 	      			       --encoding utf8 --host 127.1.1 --port 5432 --username postgres CGIFCH > $CGIFCH_DATA
# SCHEMA
		 pg_dump     --format custom --section pre-data  --section post-data   --encoding utf8 --host 127.1.1 --port 5432 --username postgres CGIFCH > $CGIFCH_SCHEMA 
 

		echo "sauvegarde Repertoire Terminer" 

	elif [ "$ouinon" = "n" ] || [ "$ouinon"= "N" ] 
		then
    		echo "Ok, bye!"
	else
    	
		echo "Il faut taper Y ou N!! Pas $ouinon" 

	fi

exit 0

========================================

smile:):)

restore

#!/bin/bash
#    
# cp based backup script.
#
#

if [! -d "/media/soleil/6528-D95D/SAUVEGARDE/" ]
then
echo "Branche le lecteur"
exit 1
fi 

	echo "recuperation RESTAURE BDsql: "
	echo -n "Entrez: sa date de sauvegarde : "
	read file

	CGIFCH_SCHEMA="CGIFCH_SCHEMA_"$file".backup" 
	CGIFCH_DATA="CGIFCH_DATA_"$file".backup" 
 
 	echo -n "File PostgreSQL ---  A Restaurer :"
	echo "$CGIFCH_SCHEMA"

	echo -n "File PostgreSQL ---  A Restaurer :"
	echo "$CGIFCH_DATA"

if [ -e "$CGIFCH_DATA" ]
	then

	echo -n "Voulez-Restaurer Y/N : "
	read ouinon
	if [ "$ouinon" = "y" ] || [ "$ouinon" = "Y" ] 
		then

cd /media/soleil/6528-D95D/SAUVEGARDE/ 

# recharge et creation des tables et leurs definitions
		pg_restore      --host 127.1.1 --port 5432 --username postgres   --dbname  CGIFCH   $CGIFCH_SCHEMA
# recharge les données 
		pg_restore   -a --host 127.1.1 --port 5432 --username postgres   --dbname CGIFCH   $CGIFCH_DATA

		echo  "restaurer controler avec un vacum general "

	elif [ "$ouinon" = "n" ] || [ "$ouinon" = "N" ]
		then
    		echo "Ok, bye! "	
	else
    		echo "Il faut taper Y ou N!! Pas $ouinon"
	fi
else
        echo "Le fichier n'existe pas, du moins n'est pas dans le répertoire d'exécution du script"
fi
exit 0

Bonjour, Arrive de DB2  1978--2014
pratique ECPG depuis 2013

Hors ligne

Pied de page des forums