Page 1 sur 1

Sauvegarde Multipostes

Posté : dim. déc. 04, 2016 4:23 pm
par yann
Bonjour Guillaume,
une petite question concernant les sauvegardes journalière:
Lorsqu'on valide la sauvegarde d'OpenConcerto, il enregistre tout dans un dossier avec les jours et dans ces dossiers "jour" il y a un dossier Base. Est ce que le .sql qui s y trouve me permettrai de récupérer les données que j ai perdu?
d'avance merci de votre réponse
yann
Ps je viens de réinstaller mon serveur en Debian et du coup c'est la question que je me posais avant de tout re-saisir .
cordialement

Re: Sauvegarde Multipostes

Posté : dim. déc. 04, 2016 8:18 pm
par Ragus
Bonjour,

Oui il y a tout pour restaurer les données dans la sauvegarde journalière.
C'est un peu complexe pour un non initié mais en cherchant dans l'historique du forum on doit pouvoir trouver.

Conseil : pour la base de données seule (pas les documents et réglages d'OC) , il est plus simple de faire une sauvegarde avec PgAdmin par exemple , en tout cas la restauration est très simple en cas de besoin.
C'est en plus de la sauvegarde journalière.

Cordialement,

Re: Sauvegarde Multipostes

Posté : lun. déc. 05, 2016 6:48 am
par yann
Merci pour les précision Guillaume,
en fait cela va me permettre de ne pas tout re saisir
pour les dossier et fichiers je les ai c'est pas un soucis il me manquait juste les données
je vais donc chercher sur l'historique pour restaurer les fameuses données et a l'avenir oui je ferait en plus un dump de la BDD
Merci
Bonne journée
Yann

Re: Sauvegarde Multipostes

Posté : mer. déc. 07, 2016 9:09 pm
par yann
Bonsoir Guillaume,
bon je galère un peu pour restaurer mes données
pour la structure de la base c'est ok .
je voudrais juste savoir comment ré injecter les données stockées dans les fichier TXT, dans les tables de la base ??
Merci de m'éclairer si possible
cordialement
yann

Re: Sauvegarde Multipostes

Posté : jeu. déc. 08, 2016 8:22 am
par tvans
Bonjour,
à mon avis, brut de pomme,
il faut les remettre au bon format pour l'injection dans votre base de donnée.
es : si postgresql le futur fichier .sql contiendra des lignes de ce type, la virgule est remplacé par une tabulation, plus de guillemet pour les valeurs etc...,

Code : Tout sélectionner

COPY "DSN_REGIME_LOCAL" ("ID", "CODE", "NOM", "ARCHIVE", "ORDRE") FROM stdin;
1			0	0.00000000
2	99	non applicable	0	1.00000000
3	01	régime local Alsace Moselle	0	2.00000000
\.
ça signifie donc qu'il faut écrire une moulinette de conversion de fichier, qui parcourt tout le répertoire de sauvegarde et qui génère un gros fichier .sql qu'on pourra injecter en ligne de commande avec psql.exe
+ restauration des templates locaux, et des des historiques des pdf générés.

à mon avis, pour un néophyte vaut mieux payer 4 jetons à guillaume pour qu'il le réalise, gain de temps et sécurisation des données générées depuis la sauvegarde.

Re: Sauvegarde Multipostes

Posté : jeu. déc. 08, 2016 9:46 am
par yann
Merci TVANS
je vais essayer pour pas mourir idiot et cas echéant oui je prendrais les 4 jetons
en tous cas merci à tous pour votre aide

Re: Sauvegarde Multipostes

Posté : dim. mars 05, 2017 3:28 pm
par Denis_q
Bonjour,
Je suis en train de me poser la même question...
Alors le commencement c'est de repérer les fichiers .txt et de les mettre dans la bonne table. Sous Linux j'ai fait ça de la façon suivante, sachant que j'ai créé un tablespace "entreprise" :

Code : Tout sélectionner

 #!/bin/bash
printf "Programe de restauration des tables dans la bdd OpenConcerto.\n"
printf "Répertoire contenant les fichiers sql : \n"
read -p rep_sql
printf "Répertoire contenant les fichiers txt de données des tables : \n"
read -p rep_txt
# find : -P ne suis pas les liens symboliques ; -execdir .... + permet d'exécuter la commande dans le répertoire du fichier trouvé
find -P ${rep_sql} -type f -name *.sql -execdir psql -S -v search_path="entreprise"."OpenConcerto50" -d "openconcerto" -U openconcerto -f {} +
#insérer un test d'erreur sur le ligne préćedente avant d'éxécuter la ligne ci-dessous, qui d'ailleurs ne fonctionne pas correctement...
find -P ${rep_txt} -type f -name *.txt -execdir psql -S -d "entreprise"."OpenConcerto50" --command="\copy \"OpenConcerto50\".\-f {} +
			echo -e "\n Traitement des données $$ \n";
		sleep 30;