Vous n'êtes pas identifié(e).

#126 Événements » Sortie de postgresql 9.2 » 04/09/2012 10:20:42

arthurr
Réponses : 3

En vue de la sortie de la version 9.2, j'ai commencé à rédiger une dépêche sur le site http://linuxfr.org

Si vous voulez participer à la rédaction : http://linuxfr.org/redaction/news/sorti … gresql-9-2

Ce site est très utilisé par les "libristes" et donc à une très bonne visibilité dans la communauté open source Française.

#127 Re : Général » Transaction annulée » 13/06/2012 17:23:15

Question bête : pourquoi ne pas sortir de transaction et passer en autocommit ? il ne reste plus qu'a gérer (ou pas) les erreurs de traitements.

#128 Re : Réplication » HotStanby + pg_upgrade » 01/06/2012 15:56:19

on est d'accord que serveur arrêté ou pg_start/stop_backup ne change pas grand chose.
dans les 2 cas le rsync va faire son travail.
ma question (mal posée à la base) : je ne suis pas obligé de supprimer tout le standby pour le refaire ?

#129 Re : Réplication » HotStanby + pg_upgrade » 01/06/2012 15:40:50

rsync sait faire un diff sur des fichiers binaires cela permet donc de réduire le temps de remise en route du standby (j'ai des clients qui utilisent le standby en lecture).
Dans mon cas l'intérêt est minime (seulement 5Go de données), mais je me pose la question pour plus tard.
L'objectif est de trouver une manip qui permet d'upgrader rapidement le master (pg_upgrade semble bien adapté dans ce cas) mais aussi sont standby sans perdre trop de temps.

#130 Réplication » HotStanby + pg_upgrade » 01/06/2012 15:03:55

arthurr
Réponses : 4

Bonjour,

Le contexte :
Je travaille actuellement sur la migration d'une base de production de 9.0.7 à 9.1.3 en utilisant pg_upgrade.
Mes tests sont OK et ma procédure écrite (migration de 5Go en 40 secondes).
La base actuelle est répliquée sur un autre serveur en utilisant le système de réplication HotStandby de Postgresql.

Ma question :
Après avoir compilé la 9.1.3 sur le l'esclave, je pensais laisser le maître éteint après le pg_upgrade puis lancer un coup de rsync du $PGDATA du maître vers l'esclave (lui aussi éteint) avant de relancer les 2 serveurs.

Quelqu'un à déjà fait cette manip ?

Merci d'avance pour vos réponses.

#131 Re : Général » HashAggregate to slow » 29/05/2012 14:15:35

Petite question :
Ces clauses WHERE peuvent changer ?

id_org = 839 
id_ref= 5 
id =  ANY( '{ ...} ')

Si la réponse est "non", il est possible de créer un index partiel (exemple avec les 2 premiers critères ):

create index on LA_TABLE (id_org,id_ref,ag_date) WHERE id_org = 839 AND id_ref= 5

#132 Re : Général » HashAggregate to slow » 25/05/2012 16:56:43

SQLpro a écrit :

CREATE INDEX X2 ON aft (id_org, id_ref, ag_date, id, p,am_c, am_co, am_p, am_pw, am_r, am_s, am_s_n, am_t, nb_of_c, nb_of_c_s, nb_of_co, nb_of_p, nb_of_pw, nb_of_r, nb_of_sale, nb_of_sale_n, nbr_of_c)
A +

Overkill, non ?

#133 Re : Optimisation » Saturation des x_log » 21/03/2012 18:52:49

OK ... j'ai trouvé mon problème.
Merci de ne pas rire trop fort :
je devais commiter chaque thread tous les 50 traitements, j'ai utilisé une belle variable "i" mais j'ai oublié de l'incrémenter.

Désolé pour le bruit, je vais me cacher !

#134 Re : Optimisation » Saturation des x_log » 21/03/2012 18:39:21

Merci pour votre réponse.
Je n'ai pas d'erreur avant celle-ci :

PANIC:  could not write to file "pg_xlog/xlogtemp.24462": Aucun espace disponible sur le périphérique
CONTEXT:  writing block 9771 of relation pg_tblspc/16705/PG_9.1_201105231/16384/1336658
LOG:  server process (PID 24462) was terminated by signal 6: Aborted
LOG:  terminating any other active server processes
WARNING:  terminating connection because of crash of another server process
DETAIL:  The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
HINT:  In a moment you should be able to reconnect to the database and repeat your command.

Je lance un soft en pyhton qui va creer 24 thread et chaque thread va creer une table temporaire qui est elle même utilisée par une procedure stockée appelée en boucle (la table temporaire de chaque thread est vidée avant d'être réutilisée par la boucle suivante).

#135 Optimisation » Saturation des x_log » 21/03/2012 17:31:22

arthurr
Réponses : 4

Bonjour,

J'ai un serveur Postgresql 9.1.3 et c'est la 2ème fois que je sature ma partition x_log.
Cette partition fait 9Go.

Ma configuration de checkpoint :

xxx=# select name, setting from pg_settings  where name  ~ 'checkpoint|wal' order by 1;
             name             |  setting  
------------------------------+-----------
 checkpoint_completion_target | 0.8
 checkpoint_segments          | 64
 checkpoint_timeout           | 900
 checkpoint_warning           | 30
 log_checkpoints              | off
 max_wal_senders              | 0
 wal_block_size               | 8192
 wal_buffers                  | 2048
 wal_keep_segments            | 0
 wal_level                    | minimal
 wal_receiver_status_interval | 10
 wal_segment_size             | 2048
 wal_sender_delay             | 1000
 wal_sync_method              | fdatasync
 wal_writer_delay             | 200
(15 rows)

(Je viens juste de baisser le nombre de checkpoint_segments à 32 pour eviter d'autres saturations.)
D'après la formule magique, je ne devais pas avoir plus de (2 + 0.8) * 64 + 1 journaux, soit 180 fichiers WAL.
Et 180 xlog de 16Mo ça fait -> 2.8 Go

En ce moment même, j'ai relancé mon traitement avec un checkpoint_segments = 32 et j'ai 405 fichiers Wal.

J'ai raté quelque chose ?

#136 Re : Installation » Comparaison serveur primaire et réplicat » 09/03/2012 11:13:00

Juste un petit complément :
sur le slave : SELECT pg_last_xlog_receive_location()
sur le master : SELECT pg_current_xlog_location()

#137 Re : Installation » Passage de postgres 8.4 à 9 et de CentOs à Débian » 24/02/2012 10:01:35

Exact, Debian installe pg_ctl dans /usr/lib/postgresql/9.1/bin/

On retrouve nos tous nos amis :

postgres@xxxxxxx:~$ ls /usr/lib/postgresql/9.1/bin/
clusterdb  createlang  dropdb    dropuser  pg_basebackup   pg_ctl   pg_dumpall    pg_restore     pg_upgrade  postmaster  reindexdb
createdb   createuser  droplang  initdb    pg_controldata  pg_dump  pg_resetxlog  pg_test_fsync  postgres    psql        vacuumdb

#138 Re : Installation » Passage de postgres 8.4 à 9 et de CentOs à Débian » 23/02/2012 17:39:08

le plus simple pour savoir pourquoi il ne démarre pas (je suis sous debian, mais je compile mon postgresql) :
sous root, faire un "su - postgres"
puis faire un "pg_ctl -D /le/chemin/vers/votre/base/de/test start"
tous les messages seront affichés en console.

#139 Re : Général » index varchar_pattern_ops fonctionne pour un equal ? » 23/02/2012 17:17:30

bonjour

Dans la doc http://docs.postgresqlfr.org/9.0/indexes-opclass.html , il est bien précisé que ce type d'index ne travaille pas sur les "locales" de l'utilisateur donc ne permettent pas les comparaisons du type >,<, ...
mais ils savent travailler sur des égalités ("Néanmoins, des comparaisons d'égalité ordinaires peuvent utiliser ces classes d'opérateur.")

#140 Re : Installation » Passage de postgres 8.4 à 9 et de CentOs à Débian » 23/02/2012 16:53:37

bonjour

a) les fichiers de logs sont dans /var/log/postgresql/

b) initdb n'est pas un service, il sert à initialiser un cluster (initdb -D /le/chemin). il se trouve bien dans Debian (/usr/bin ?) si vous avez installé le serveur postgresql (sous root : apt-get install postgresql)

#141 Re : PL/pgSQL » Création d'une fonction qui retourne plusieurs chaines de caractères » 14/02/2012 19:11:05

Bonjour,

strnoms doit être NULL au démarrage de la procédure stockée, et on ne sait pas concaténer des NULL avec une chaine :

postgres=# select NULL || 'toto';
 ?column? 
----------
 
(1 row)

postgres=# select '' || 'toto';
 ?column? 
----------
 toto
(1 row)

Pour corriger votre problème, utilisez COALESCE (http://docs.postgresqlfr.org/9.0/functi … ional.html) ou initialisez strnoms := ''

#142 Re : Installation » Monter un bse existente sur pgAmin II » 10/02/2012 17:25:59

Marilyn a écrit :

Bonjour,

J'ai besoin d'aide. je vous avoue que je n'y connais pas grand choses en DB. Voici mon probléme.

J'ai une base de données sous postgress en prod et je désire la copier sur mon poste pour pouvoir effectuer des tests. J'ai donc récupérée pgAdmin III et j'ai demandé un backup de la base. On m'a donc fourni un .sql qui contient la base avec les données.

Le problème c'est que je ne sais pas comment monter/importer cette base sur pgAdmin III, ou même si cela est possible.

Merci par avance.

En lisant votre poste, j'ai comme un doute ... Une petite précision : pgAdmin n'est pas un moteur de base de données, c'est un client. Pour monter/importer la base sur votre poste, il va falloir (si ce n'est déjà fait) installer Postgresql sur votre poste.

#143 Re : Général » uestion sur un select » 09/02/2012 17:47:46

il faut mettre un ";" à la fin de la commande SQL

#144 Re : Général » uestion sur un select » 09/02/2012 17:01:03

ne pas faire :

madatabase# "select count (*) from table-toto"

mais

madatabase# select count (*) from table-toto;

#145 Re : Général » importer une base de données sous excel » 09/01/2012 15:07:17

Bonjour,

En utilisant COPY au format CSV. Mais cela ne va pas fonctionner pour une base, mais une table :
http://docs.postgresqlfr.org/9.0/sql-copy.html

#146 Re : Général » Recherche projet scolaire - DBA Postgres avez vous des besoins ? » 09/01/2012 11:42:27

de mon côté (en attendant mieux), j'ai un script qui créé un CSV avec en colonne les utilisateurs de la base, et une ligne par objet (table, vue, sequence, ...) avec la liste des droits.
Ca me permet d'avoir une vue d'ensemble mais sans pouvoir modifier quoi que ce soit en directement.

Exemple :

pri@localhost:~/perl$ perl pg_roles.pl -H xxxx -U postgres -d xxxxxx -l
Type;Object;postgres*;reader;work
Table;public.attribute;dgirstu;s;Owner
Table;public.table1;dgirstu;s;Owner
Sequence;table1_seq;;;Owner
(*) = superuser
d = DELETE g = TRIGGER i = INSERT r = REFERENCES s = SELECT t = TRUNCATE u = UPDATE U = Usage
pri@localhost:~/perl$

#147 Re : Général » Recherche projet scolaire - DBA Postgres avez vous des besoins ? » 09/01/2012 10:47:48

Bonjour,

Un bon outil de gestion des droits. Même si pgadmin permet de faire cela, il manque (à mon avis) un outil qui donne une vue d'ensemble pour une base de données.

#148 Re : Général » Récupération d'un ancien dossier data » 07/12/2011 15:46:27

Je ne connais pas Windows (à part de nom), mais Postgresql doit vous logger une erreur, non ?

#149 Re : Général » Récupération d'un ancien dossier data » 07/12/2011 14:56:06

gtell42 a écrit :

Bonjour,
...
Je n'arrive cependant pas à remplacer le nouveau dossier data par l'ancien.
...

Bonjour,

C'est un problème au moment de la copie ou au moment du lancement du serveur ?
Vous êtes sous Linux ?

Normalement, si la copie du répertoire PGDATA est complète, il est possible de lancer un serveur Postgresql (même version Postgresql + même version 32b/64b) en lui indiquant quel répertoire utiliser : pg_ctl -D /votre/repertoire (faites une copie de sauvegarde avant de tester)

#150 Re : Optimisation » FOREIGN KEY REFERENCE sur 2 tables différentes même nom d'index » 30/11/2011 11:29:18

je crois que brave monsieur est un spammeur, mais le texte est très drôle  smile

Pied de page des forums

Propulsé par FluxBB