Vous n'êtes pas identifié(e).
Pages : 1
Je suis sous windows XP et j'utilise postgres 8.4.
J'ai essayé de monter une base standby avec le principe du Log shipping, ci après la démarche que j'avais fait:
1- j'ai modifié postgresql.conf comme suit :
archive_mode = on
archive_command = 'copy "%p" "C:\\DBA\\sauvegarde\\%f"'
archive_timeout = 60
2- j'ai démarré ma base base1
3- après démarrage, les fichiers journaux sont créer dans le path C:\DBA\sauvegarde et dans C:\Program Files\PostgreSQL\8.4\data\pg_xlog\archive_status , j'ai les fichiers journaux misent en extension .done
4- j'ai arrêté ma base afin de faire un sauvegarde à froid des data , j'ai donc copié les fichiers C:\Program Files\PostgreSQL\8.4\data dans un autre machine base2 .
5- j'ai installé postgres 8,4 sur la machine base2.
6- j'ai copier les contenues du sauvegarde dans la base2.
7- j'ai supprimer les fichiers journal dans le path C:\Program Files\PostgreSQL\8.4\data\pg_xlog
8- j'ai ensuite créer le fichier recovery.conf et j'ai mis
restore_command = 'copy "C:\\DBA\\sauvegarde\\%f" "%p"'
9 - j'ai démarré la base2
Le problème c'est que je n'arrive pas à faire démarrer ma base base2.
Est ce que vous avez des solutions ?
Hors ligne
Je pense que vous avez un problème de propriétaire du répertoire postgres et de ses fichiers sur la seconde machine :
tous les fichiers et répertoires de données doivent appartenir à l'utilisateur système postgres.
Marc.
Hors ligne
J'avais pas pensé à cela, comme vous avez dit donc j'ai crée l'utilisateur postgres sur la seconde machine et maintenant ca marche , merci .
Par contre dans le doc de postgres j'ai vue qu'il y avait un autre moyen de faire un sauvegarde celle qui utilise le
select pg_start_backup('label');
select pg_stop_backup();"
Quelle sont les roles de ces deux fonctions ?
Hors ligne
Cela permet de réaliser les sauvegardes à chaud au lieu d'éteindre la base principale.
Marc.
Hors ligne
Merci de détailler votre problème.
Guillaume.
Hors ligne
Pages : 1