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 Re : Réplication » [RESOLU] Log Shipping » 14/04/2010 13:38:41

Bnjour Panou,

J'ai pris la doc standard de PG. Il y a tout un chapitre sur le sujet.

#3 Re : Réplication » Slony/PG8.4 sous Windows » 29/03/2010 15:14:07

Bonjour,

Je viens prendre des nouvelles sur les versions PG8.4 et Slony 2 sous Windows.
Lors de nos derniers échanges, Gleu avait reproduit le pb.
Y-a-t-il eu des sorties de versions pour palier au souci?

Cordialement

#4 Re : Réplication » Réplication via WAL de plusieurs bases » 27/01/2010 16:09:08

En effet, cela fonctionne.
Je vous remercie encore une fois!

#5 Réplication » Réplication via WAL de plusieurs bases » 26/01/2010 11:10:53

energiesysteme
Réponses : 3

Bonjour,

J'ai mis en place la réplication via les WAL sur PG8.2 (vers une PG8.2) et PG8.3 (vers une PG8.3) sous XP; cela fonctionne parfaitement.

Ma nouvelle problématique est que j'ai plusieurs bases de données sur le serveur maitre que je veux pouvoir répliquer sur l'esclave.
Est-ce possible? Si oui, comment faire?

J'ai essayé de faire plusieurs pg_start_backup, mais PG refuse en me disant qu'un backup est déjà en cours quand je le fais sur la 2nde base....

Merci d'avance

#6 Réplication » Restauration des WAL en 8.4, 8.3.9 et 8.3.7 » 07/01/2010 15:14:52

energiesysteme
Réponses : 1

Bonjour,

Je mets en place un serveur de secours en utilisant les Log Shipping.
Je suis sous Windows XP. Ayant un crash de pg_standby en utilisant la 8.4, je suis repassé en 8.3.9.

Avec cette version, la procédure se passe sans erreur, mais il me reste un point noir : les modifs effectuées sur le maitre ne sont pas reportées sur l'esclave...

Voici ce que j'ai fait; cela vous permettra sans doute de m'aider à voir où j'ai fait une erreur.

- Les 2 PG sont avec la même version (8.3.9 sous XP)
- sur le maitre:
   - config de l'archivage des WAL
   - pg_start_backup
   - copie du dossier data sur le serveur de secours (avec les bons droits)
   - pg_stop_backup
- sur l'esclave
   - suppression du contenu du dossier xlog
   - config du recovery.conf pour indiquer où sont dispo les WAL du maitre (copiés en local)
   - démarrage de PG
   - création du fichier trigger pr que pg_standby commence le traitement

PG démarre et au bout de qq secondes recovery.conf est renommé en recovery.done.

2010-01-07 11:19:24 CETLOG:  automatic recovery in progress
2010-01-07 11:19:24 CETLOG:  record with zero length at 0/490000B0
2010-01-07 11:19:24 CETLOG:  redo is not required
2010-01-07 11:22:03 CETLOG:  selected new timeline ID: 3
2010-01-07 11:22:20 CETFATAL:  the database system is starting up
2010-01-07 11:22:39 CETLOG:  archive recovery complete
2010-01-07 11:22:41 CETLOG:  le système de bases de données est prêt pour accepter les connexions
2010-01-07 11:22:41 CETLOG:  autovacuum launcher started

Quand je lance PGAdmin, je vois la base, mais je ne vois pas les dernières modifs qui ont été efféctuées sur le maître, même si des WAL ont été créés depuis.

J'ai refait le test avec une 8.3.7, et tout fonctionne.

Ai-je oublié quelque chose?

Merci encore!

#7 Re : Réplication » Slony/PG8.4 sous Windows » 30/12/2009 10:33:19

Les copies d'écran ainsi que la procédure que j'utilise sont dispo à l'URL :  [lien supprimé]
Le script SQL de l'onglet est : [lien supprimé]

Même chose que la dernière fois, j'enlève ces documents une fois que vous les avez récupérés.
N'y a-t-il pas une solution plus élégante pour vous envoyer ce type d'info (copie d'écran, script > 64ko)?

Merci encore

#8 Re : Réplication » Slony/PG8.4 sous Windows » 30/12/2009 10:06:57

Bonjour,

C'est bien ce que je vous ai fourni.
Je vous fait des copies d'écran et vous les mets à dispo

#9 Re : Réplication » [RESOLU] Log Shipping » 28/12/2009 18:49:34

Je vous confirme qu'aucun fichier n'arrive sous W:\

Je vais donc creuser dans ce sens.
Merci encore.

#10 Re : Réplication » [RESOLU] Log Shipping » 28/12/2009 18:37:24

C'est vrai que je n'ai aucune activité en ce moment dessus.

Pour la fonction archivage; j'ai le dossier pg_xlog qui se complète toutes les 5 minutes (300s paramétrés ds le postgres.conf) avec les fichiers de 16Mo.
Est-ce un gage de bon fonctionnement de l'archivage?

#11 Réplication » [RESOLU] Log Shipping » 28/12/2009 17:23:12

energiesysteme
Réponses : 11

Bonjour,

Désolé de poser une nouvelle question de débutant....
Slony 2.0.2 n'étant pas à utiliser en prod pour l'instant, je bascule donc sur le Log Shipping.

Voici la procédure que j'ai suivi (normalement celle de la doc).
J'utilise PG8.4 sous Windows.

1 / pg_start_backup a l'air de bien se passer. Contrairement à se que dit la doc; l'opération ne prends pas de temps.

C:\Program Files\PostgreSQL\8.4\bin>psql -U postgres -c "SELECT pg_start_backup('sauve_1')" dbmaitre
Mot de passe pour l'utilisateur postgres : *****
pg_start_backup
-----------------
0/9000020
(1 ligne)

2 / pg_stop_backup. L'opération n'en fini pas malgré une base qui n'a qu'une seule table et 3 enregistrements...

C:\Program Files\PostgreSQL\8.4\bin>psql -U postgres -c "SELECT pg_stop_backup()
" dbmaitre
Mot de passe pour l'utilisateur postgres : *****
ATTENTION:  pg_stop_backup toujours en attente de la fin de l'archive (60 secondes passées)
ATTENTION:  pg_stop_backup toujours en attente de la fin de l'archive (120 secondes passées)
ATTENTION:  pg_stop_backup toujours en attente de la fin de l'archive (240 secondes passéées)
ATTENTION:  pg_stop_backup toujours en attente de la fin de l'archive (480 secondes passées)
ATTENTION:  pg_stop_backup toujours en attente de la fin de l'archive (960 secondes passées)
ATTENTION:  pg_stop_backup toujours en attente de la fin de l'archive (1920 secondes passées)
...

J'ai paramétré postgresql.conf de la sorte (archive_timeout volontairement faible pour les tests)

# - Archiving -

archive_mode = on        # allows archiving to be done
archive_command = 'xcopy /Y %p w:\%f'        # command to use to archive a logfile segment
archive_timeout = 300        # force a logfile segment switch after this

et enfin le recovery.conf

restore_command = 'xcopy /Y w:\%f %p'

Merci encore

#12 Re : Réplication » Slony/PG8.4 sous Windows » 28/12/2009 10:46:24

Bonjour,

Les scripts SQL des maitre et esclave faisant 218ko chacun, je vous les mets à disposition sur les URL suivantes :
[liens supprimés]

J'enlèverai ces fichiers qd vous en aurez pris connaissance.
Si vous préférez que je les poste ailleurs, n'hésitez pas à me dire où.

Cordialement

#13 Re : Réplication » Slony/PG8.4 sous Windows » 23/12/2009 17:33:24

Je vous remercie de ces infos.
Je vais donc patienter avant de valider la solution que la 2.0.3 voire ultérieure soit validée.

Cordialement,
Bonnes fêtes de fin d'année.

#14 Re : Réplication » Slony/PG8.4 sous Windows » 23/12/2009 16:53:18

Bonjour,

Je suis sous Windows. Les seules versions Slony 1.2.x pour Windows que j'ai trouvé sont les suivantes:
- slony-I-1.2.12R-pg82.zip
- slony-I-1.2.16R-pg83.zip

Ces 2 versions sont inférieures à la 1.2.20 dont vous parlez et sont notées comme étant pr PG 8.2 ou 8.3.
Cela peut-il fonctionner pour PG8.4?

Mon projet n'étant pas pour tout de suite, me conseillez-vous d'attendre la V2.0.x stable?
Et de manière générale, comment savoir si la version est stable étant donné que sur le site http://www.slony.info/, la V2.0.2 est noté comme "Released"?

Cordialement

#15 Re : Réplication » Slony/PG8.4 sous Windows » 23/12/2009 11:09:04

Quelle version puis-je utiliser avec PG8.4 si la V2.0.2 ne doit pas l'être?

Merci encore

#17 Re : Réplication » Slony/PG8.4 sous Windows » 22/12/2009 18:46:48

Voici la procédure  que je suis; pouvez-vous m'aider à savoir quelle étape est erronée?

dbmaitre avec une table 'tabletest' ds le schéma 'public'
dbesclave avec une table 'tabletest' (avec la même structure) ds le schéma 'public'

db1.conf

log_level=1
log_timestamp=false
cluster_name='test'
conn_info='host=127.0.0.1 user=postgres dbname=dbmaitre'

db2.conf

log_level=1
log_timestamp=false
cluster_name='test'
conn_info='host=127.0.0.1 user=postgres dbname=dbesclave'

slon –regservice
slon –addengine db1.conf
slon –addengine db2.conf
slon -listengines

Les 2 engines sont bien listés.

Dans pgAdmin,
- sur dbmaitre je créé un cluster 'test'. La création a l'air de bien se passer.
- sur dbesclave j'ajoute à un cluster existant. pgAdmin liste bien le cluster 'test', mais qd je valide, il me mets l'erreur vue ds le 1er POST.

Où ai-je manqué une étape ou, où ai-je fait une erreur?

Merci!

#18 Re : Réplication » Slony/PG8.4 sous Windows » 22/12/2009 16:03:47

Au risque de dire une grosse bêtise; les 2 bases étant sur la même machine; même port.... le fait d'installer Slony sur la machine, cela ne fonctionne pas automatiquement pour les 2 bases?

#19 Réplication » Slony/PG8.4 sous Windows » 22/12/2009 12:18:35

energiesysteme
Réponses : 24

Bonjour,

Je tente de mettre en place Slony-I sur PG8.4 sous Windows.

J'ai mis à jour pgAdmin en 1.10.1 pour des pb de création de cluster. Cette mise à jour faite, j'arrive à créer le cluster.
Quand je veux ajouter une base esclave (en suivant la doc http://www.pgadmin.org/docs/dev/slony-install.html), j'ai une erreur à l'étape "Joindre des nœuds supplémentaires au cluster".

2009-12-22 11:15:19 CETERREUR:  la transaction est annulée, les commandes sont ignorées jusqu'à la fin du bloc de la transaction
2009-12-22 11:15:19 CETINSTRUCTION :  SELECT 1;
2009-12-22 11:15:26 CETERREUR:  la fonction _clusterReplication.storenode(integer, unknown, boolean) n'existe pas au caractère 8
2009-12-22 11:15:26 CETASTUCE :  Aucune fonction ne correspond au nom donné et aux types d'arguments. Vous devez ajouter des conversions explicites de type.
2009-12-22 11:15:26 CETINSTRUCTION :  SELECT "_clusterReplication".storenode(6, 'test', false);     SELECT "_clusterReplication".enablenode(6);
   
2009-12-22 11:15:29 CETERREUR:  la transaction est annulée, les commandes sont ignorées jusqu'à la fin du bloc de la transaction
2009-12-22 11:15:29 CETINSTRUCTION :  SELECT 1;

Pour ma 1ère réplication, les 2 bases sont en local. A termes, une sera en local, l'autre déportée.

Avez-vous une idée que ce qui peut bloquer?

Merci d'avance!

#20 Re : Général » Pb restauration d'un dump partiel » 03/12/2009 10:20:20

OK.

C'est vraiq ue PSQL est client. Pour moi c'était aussi coté serveur, mais non.
Mes tests avec PG_DUMP/PG_RESTORE fonctionne nickel, donc, je classe l'affaire.

Je vous remercie tous des conseils que vous m'avez donné.

#21 Re : Général » Pb restauration d'un dump partiel » 02/12/2009 17:56:09

La seule chose que je peux certifier, c'est que je ne me suis pas amusé à modifier un fichier de plus de 1Mo.
Il me semble que que l'ai eu via PSQL -L

Si cela vous semble douteux, je pourrai le refaire.

#22 Re : Général » Pb restauration d'un dump partiel » 02/12/2009 15:23:03

J'oubliais, je vous confirme que le log que j'ai fourni vient bien de PSQL.

#23 Re : Général » Pb restauration d'un dump partiel » 02/12/2009 15:04:30

Je pense avoir compris.

L'utilisation de PG_DUMP/PSQL fonctionne en SQL soit. Mais il faut aussi que le dump soit un dump sans restriction de schéma.
Si j'utilise PG_DUMP/PG_RESTORE avec Fc ou Ft, cela fonctionne parfaitement; même avec exclusion de schéma!

Peut-être y-a-t-il une restriction à l'utilisation de l'exclusion de schéma.

Merci pour vos pistes.

#24 Re : Général » Pb restauration d'un dump partiel » 02/12/2009 10:26:53

Marc COUSIN,

Je me doute bien que si un schéma n'est pas sauvegardé, il ne pourra être restitué; il ne sera même pas recréé car pas ds le backup.
Dans le cas présent, les schémas présents ds le backup sont bien tous créés, mais ne sont pas tous complétés.

Dans quel cas utiliser PSQL et ds quel cas utiliser PG_RESTORE?

#25 Re : Général » Pb restauration d'un dump partiel » 02/12/2009 10:21:33

Bonjour,

La commande que j'utilise pour la sauvegarde est :
"pg_dump -h host -U user -p port -c -N sch_site_????????_archivage db > file.sql"

La commande que j'utilise pour la restauration est :
"psql.exe -h host -U user -p port -f script base"

Pied de page des forums

Propulsé par FluxBB