|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
Bonjour,
J'utilise pour mon site Web une base postgres 8.1 sous linux. J'ai développé ce site en local sous windows avec la même version de base 8.1 Ce que je souhaiterai, si possible, récupérer une copie de cette base en local pour avoir le même volume de données afin de faire des tests. J'ai déjà fait quelques tentatives sauvegarde et de restore qui ont échouées... J'ai sauvegardé les données et voulu les insérer dans ma base en local et là quelques message d'erreurs se sont affichés... je pense que le mieux serait, peut-être, une sauvegarde complète de la base pour une résintallation complète en locale. Seulement d'un côté je suis en linux et de l'autre sous windows...Est-ce possible et comment faire ? merci pour votre aide et pour la compréhension de ma problématique. |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
Si tu as essayé de copier physiquement les fichiers de données depuis Linux vers Windows, ça ne m'étonne pas que ça ne marche pas ..
Le plus simple à mon avis c'est partir de ton serveur Windows, faire depuis DOS un pg_dumpall de ta base distante Linux (avec les options -h hostname -p port), tu récupères un fichier dump au format requêtes SQL que tu n'as plus qu'à importer sur Windows Regarde sur la doc officielle c'est expliqué : http://www.postgresql.org/docs/8.1/static/backup.html |
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
Oui j'ai lu ça...mais sans aucune pratique antérieure je ne veux pas faire de bêtise
|
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
Faut juste faire attention à faire l'export de ta base linux et l'import dans ta base windows (et pas l'inverse)
Le pg_dumpall n'a aucun impact sur ta base linux, c'est juste une extraction de la structure et des données, donc des ordres select sur les vues du dictionnaire et les tables (juste un léger impact au niveau perfs si vraiment ta base est volumineuse) En gros, depuis ton DOS Windows : Code :
|
||
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
j'essaie déjà de sauvegarder ma base en local avec la commande pg_dumpall>mabase.sql mais rien ne se passe. Pas de fichier créé.
|
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
Quelle commande tapes-tu sous DOS ? Quel est le message d'erreur ?
|
|
|
00
|
|
|
#7 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
pg_dumpall > mabase.sql
je n'ai aucun message d'erreur |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
tu as un fichier mabase.sql qui s'est créé avec dedans l'export SQL ?
|
|
|
00
|
|
|
#9 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
non rien.
|
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
bizarre ...
essaie de faire la même commande pg_dumpall depuis ton linux, vu que ça te génère un fichier mabase.sql au format requêtes sql, normalemenent ça sera compatible ensuite transfère ton fichier mabase.sql sur windows, et importe le |
|
|
00
|
|
|
#11 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
Mon hébergeur l'a fait puisque c'est de l'infogérence je n'ai pas accès au serveur. Il a fait un pg_dumpall et j'ai le fichier .sql
Comment l'importer, tu veux dire l'exécuter ? |
|
|
00
|
|
|
#12 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
Vérifie que sur ton windows ton service postgresql est démarré
Ensuite depuis DOS tu tapes Ca devrait créer ta base et importer tes données |
|
|
00
|
|
|
#13 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
rien ne fonctionne, aucun message d'erreur !
postgres-# pg_dumpall < backup.sql voila ce que j'ai sous DOS et après avoir fait "enter" j'ai postgres-# |
|
|
00
|
|
|
#14 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
Si tu tapes 'psql' tu arrives bien dans l'utilitaire de commandes Postgresql au moins ?
|
|
|
00
|
|
|
#15 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
oui j'y suis...
|
|
|
00
|
|
|
#16 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
bon ben tapes '\q' pour sortir, on va procéder autrement
crée ta base à vide (voir http://www.postgresql.org/docs/8.1/s...-createdb.html) sauvegarde ton fichier sql dans un coin et copie une modif pour l'éditer. ensuite dans ton fichier SQL tu ne gardes que les lignes qui sont après le "CREATE DATABASE <TA_BASE>" Il te faut donc garder que les requêtes SQL à lancer sur ta base déjà créée pour créer les rôles, les tablespaces, les schémas, les tables, ... Quand c'est fait tu tapes depuis DOS Code :
psql -d <ta_base> -f <ton_fichier_modifie.sql> >fichier_log.log |
|
|
00
|
|
|
#17 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
Oui je suis juste en train d'installer postgres sur un autre poste pour limiter les risques et ensuite jefais ce que tu me dis..
|
|
|
00
|
|
|
#18 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
laissons tomber pour l'installation de postgres sur un autre post avec vista c du délire. Donc je vais tenter sur ce poste mais j'espère ne pas perdre ma base.
|
|
|
00
|
|
|
#19 |
|
Membre Expert
![]() Inscription : juin 2007 Messages : 1 497 ![]() |
c'est pas ta version de postgresql (ou l'utilitaire pg_dumpall) qui ne serait pas compatible avec vista par hasard ?
teste sur un poste XP, normalement avec ton fichier dump SQL issu d'un pg_dumpall de ton linux, tu dois être en mesure de recréer ta base sois avec pg_dumpall < fichier.sql, soit avec la méthode que j'ai décrite juste avant |
|
|
00
|
|
|
#20 |
|
Membre habitué
![]() Inscription : mai 2002 Messages : 635 ![]() |
On va laisser tomber...y a pleins d'erreurs de syntaxe me dit-on ! donc tant pis! merci quand même;
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com