Vous n'êtes pas identifié(e).
Pages : 1
Bonjour tout le monde:
Je voudrai mettre en oeuvre la sauvegarde postgresql en utilisant BARMAN. Je suis bien sûre sur un environnement de test.
Je suis en version postgres 9.2.4 et barman 1.2.0.
j'ai essayé la sauvegarde en locale (barman sur serveur postgres) et à distance (barman sur un serveur distant).
Voilà ce qu'il m'arrive: Tout les indicateur sont OK:
___________________
[barman@localhost test]$ barman show-server TEST90
Server TEST90:
active: true
description: TEST90 PostgreSQL Database
ssh_command: ssh postgres@10.122.250.90
conninfo: host=10.122.250.90 user=postgres port=5432
backup_directory: /SVG_BARMAN90/TEST90
basebackups_directory: /SVG_BARMAN90/TEST90/base
wals_directory: /SVG_BARMAN90/TEST90/wals
incoming_wals_directory: /SVG_BARMAN90/TEST90/incoming
lock_file: /SVG_BARMAN90/TEST90/TEST90.lock
compression: gzip
custom_compression_filter: None
custom_decompression_filter: None
retention_policy_mode: auto
retention_policy: None
wal_retention_policy: main
pre_backup_script: None
post_backup_script: None
minimum_redundancy: 0
current_xlog: 000000010000000000000022
last_shipped_wal: 000000010000000000000021
archive_command: rsync -a %p barman@10.122.250.90:/SVG_BARMAN90/TEST90/incoming/%f
server_txt_version: 9.2.4
data_directory: /pgsql_data_test/9.2/pg_data
archive_mode: on
config_file: /pgsql_data_test/9.2/pg_data/postgresql.conf
hba_file: /pgsql_data_test/9.2/pg_data/pg_hba.conf
ident_file: /pgsql_data_test/9.2/pg_data/pg_ident.conf
____________________________
[barman@localhost test]$ barman check TEST90
Server TEST90:
ssh: OK
PostgreSQL: OK
archive_mode: OK
archive_command: OK
directories: OK
retention policy settings: OK
compression settings: OK
minimum redundancy requirements: OK (have 1 backups, expected at least 0)
____________________________
[barman@localhost test]$ barman list-backup TEST90
TEST90 20130621T105619 - Fri Jun 21 10:56:46 2013 - Size: 315.0 MiB - WAL Size: 25.0 MiB
__________________________
Le problème:
Sur ma base je créé une table avec qq lignes, je fais une sauvegarde barman et je fais truncate ma table.
J'arrête ma base puis je fais un "barman recover TEST90 20130621T105619 /pgsql_data_test/9.2/pg_data"
et j' ai ce masage:
rsync: change_dir#1 "/pgsql_data_test/9.2/pg_data" failed: Permission denied (13)
rsync error: errors selecting input/output files, dirs (code 3) at main.c(534) [receiver=3.0.6]
rsync: connection unexpectedly closed (9 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(600) [sender=3.0.6]
ERROR: Unhandled exception. See log file for more details.
_______________________
J'ai essayé un truc c'est que je fait le recover dans un repertoire dont le user "barman" est propriétaire puis je copie les fichier et répertoires de la base dans $PGDTA et je remet les droits postgres comme il faut, je redémarre la base c'est OK sauf que les données de la tables de test sont perdu. Comme si je n'ai pas restauré.
Question:
Dans mes démarches et surtout avant le démarrage de postgres, faut il faire qq chose comme un fichier recovery.conf ou autre car j'ai vu un backup.label dans mon $PGDATA. J'ai cherché partout mais il parle de redémarrage de la base après recover même dans la doc officielle.
Si qq à un URL aussi qui mène à un tuto ça sera la bienvenue.
Merci d'avance pour votre aide
Hors ligne
Est ce que qq aura la gentillesse de m'aider SVP?
Hors ligne
Jamais utilisé barman mais l'utilisateur qui lance le rsync c'est root ? et dnas le fichier de log qu'l vous dit d'aller voir ne vous aide pas ?
Hors ligne
Non c'est plutôt postgres. Ce paramètre est dans le "postgresql.conf".
Je demande encore l'aide. Le souci c'est que je devrai trouver une solution de sauvegarde pour des grosses base car pg_dump ne réponds plus aux besoins.
Merci d'avance pour votre aide et votre compréhension.
Bien à vous
Hors ligne
Il vous faut un fichier recovery.conf pour démarrer le serveur. Je l'avais testé avec un client mais je ne me rappelle pas s'il crée lui-même le recovery.conf ou s'il faut le faire soi-même. Si vous ne l'avez pas, créez le. Il est nécessaire.
Concernant rsync, faites attention à votre version. Il a absolument besoin d'une version 3.0.4 ou supérieure.
Oh, et ne vous étonnez pas qu'il y ait peu de réponses. barman est un outil trop récent pour être utilisé par beaucoup de gens.
Guillaume.
Hors ligne
Merci Guillaume,
Je vais peut être vous surprendre!!! j'ai refait un test en suivant ceci:
1- sauvegarde barman.
2- arrêt de la base.
3- suppression du répertoire $PGDATA.
4-crée le répertoire $PGDATA avec le user barman comme owner.
5- recover barman.
6- Modifie l'owner $PGDATA pour postgres (conserver les droits adéquates sur les fichiers et répertoires dans $PGDATA).
7- Lance postgres avec "pg_ctl start" (un test avec modification paramètre "archive_command" avant demarrage et sans changement avant démarrage).
Résultat ça marceh!!!!
Je demande de ne pas prendre argent cash ce que je fait car il faut que je test encore avec ce que tu m'as demandé en revanche si tu pourras me donner plus de détails sur le contenu du fichier "recovery.conf" de plus les étapes.
*Concernant le rsync je suis bien en version:
Installed Packages
Name : rsync
Arch : x86_64
Version : 3.0.6
Release : 9.el6
Donc pas de souci de ce côté ainsi que les autre préconisation, j'ai fait en sorte de suivre minutieusement ce qui à été demandé dans la doc officielle.
Bien à vous.
Hors ligne
Pour l'info sur le rsync, c'est juste que je suis tombé sur le problème chez un client. J'avais passé un peu vite les pré-requis, ce qui m'a fait perdre du temps. Je voulais juste m'assurer que ça n'allait pas vous arriver à vous aussi.
Concernant le recovery.conf, vous avez un fichier d'exemple dans le répertoire share (recovery.conf.sample). Sinon, tout ce qu'il vous faut par défaut, c'est le paramètre restore_command.
Guillaume.
Hors ligne
Pages : 1