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 06/12/2009 13:04:04

philippen
Membre

davical postgresql

bonjour,
autodidacte de la bdd et de postgresql je patauge sur la difficulté suivante :

je voudrais installer un serveur de calendrier davical
j'ai suivi les étapes décrites sur ubuntu

Mais quand je tape l'URL dans un navigateur j'ai la réponse suivante
Warning: pg_connect() [function.pg-connect]: Unable to connect to PostgreSQL server: FATAL: authentification Ident échouée pour l'utilisateur « davical_app » in /usr/share/awl/inc/PgQuery.php on line 69
Database Error
Could not connect to PostgreSQL database

la ligne /usr/share/awl/inc/PgQuery.php est : la ligne 69 est la dernière du paragraphe suivant

function connect_configured_database() {
  global $c, $dbconn;

  /**
  * Attempt to connect to the configured connect strings
  */
  $dbconn = false;
  if ( isset($c->pg_connect) && is_array($c->pg_connect) ) {
    foreach( $c->pg_connect AS $k => $v ) {
      if ( !$dbconn ) $dbconn = ((isset($c->use_persistent) && $c->use_persistent) ? pg_pConnect($v) : pg_Connect($v) );
    }
  }

merci pour l'aide

Hors ligne

#2 06/12/2009 13:20:35

Marc Cousin
Membre

Re : davical postgresql

Vous avez mal paramétré l'authentification. Plutôt que de juste vous donner une réponse sur ce point précis, et que vous butiez à nouveau sur les étapes suivantes, je vous conseille de lire ceci :
http://blog.postgresql.fr/index.php?pos … PostgreSQL


Marc.

Hors ligne

#3 06/12/2009 15:58:30

philippen
Membre

Re : davical postgresql

Merci de cette aide
effectivement c'est une lecture instructive.
Dans ma situation l'information importante est : dans pg_hba.conf l'ordre des lignes est capitale
.
j'avais rajouté
local davical davical_app trust
local davical davical_dba trust

au lieu de
local davical davical_dba trust
local davical davical_app trust

ceci me fait franchir une étape mais sans être au bout de mes peines
je dois encore configurer correctement /etc/davical/ip-conf.php

Hors ligne

#4 06/12/2009 19:48:37

philippen
Membre

Re : davical postgresql

Ne pas tenir compte de ma réponse précédente. Pour une raison que je n'arrive pas à déterminer je suis revenu à la case départ.

Si j'ai compris le manuel indiqué
PgQuery.php est commandé par pg_hba.conf, ce dernier indiquant qui peut se connecter à une base postgresql, laquelle et comment. Pour se connecter à davical c'est le fichier /etc/davical/ip-conf.php qui précise les choses.

Comme je suis en local, sous ubuntu pg_hba.conf doit contenir à la ligne local
local all all 127.0.0.1/32 trust (ce dernier n'étant pas recommandé car il ouvre la connection à tout le monde).

Hors ligne

#5 06/12/2009 21:13:26

Marc Cousin
Membre

Re : davical postgresql

local veut dire à travers une socket 'unix'. Si vous avez indiqué quelquepart localhost ou 127.0.0.1 comme adresse de connexion dans davical, c'est une connexion tcp que vous faites, c'est à dire que vous devez la déclarer en tant que 'host'. Quel message d'erreur avez vous maintenant ?


Marc.

Hors ligne

#6 06/12/2009 22:55:39

philippen
Membre

Re : davical postgresql

Warning: pg_connect() [function.pg-connect]: Unable to connect to PostgreSQL server: FATAL: authentification Ident échouée pour l'utilisateur « davical_app » in /usr/share/awl/inc/PgQuery.php on line 69
Database Error

Could not connect to PostgreSQL database

merci de votre patience

Hors ligne

#7 07/12/2009 08:29:11

Marc Cousin
Membre

Re : davical postgresql

Merci de donner tout votre pg_hba.conf : si vous avez cette erreur, c'est que ce n'est pas une ligne trust qui s'applique pour vous, mais une ligne ident.


Marc.

Hors ligne

#8 07/12/2009 19:42:00

philippen
Membre

Re : davical postgresql

le fichier pg_hba.conf
# Database administrative login by UNIX sockets
local   all         postgres                          ident
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
host    all        all         127.0.0.1/32     trust
# "local" is for Unix domain socket connections only
local   all         all   127.0.0.1/32          trust
# IPv4 local connections:
host    all     all          127.0.0.1/32       md5
# IPv6 local connections:
host    all     all         ::1/128               md5

local davical davical_dba trust
local davical davical_app trust

le fichier /etc/davical/localhost-conf.php
<?php
// $c->domain_name = "davical.example.net";
// $c->sysabbr = 'davical';
// $c->admin_email = 'admin@example.net';
$c->system_name = "DAvical CalDAV Server";
$c->collections_always_exist = true;
$c->enable_row_linking = true;
$c->default_locale = fr_FR.UTF-8;
//$c->pg_connect[] = 'dbname=davical port=5433 user=general';
$c->pg_connect[] = 'dbname=davical port=5432 user=davical_app';
?>

Hors ligne

#9 07/12/2009 20:49:28

gleu
Administrateur

Re : davical postgresql

Depuis la dernière modification du fichier pg_hba.conf, avez-vous rechargé la configuration ? êtes-vous sûr aussi que vous modifiez le bon fichier pg_hba.conf ?


Guillaume.

Hors ligne

#10 08/12/2009 00:34:39

philippen
Membre

Re : davical postgresql

je réponds à l'envers
le bon fichier pg_hba.conf : il y en aurait plusieurs ? Une première hypothèse. comme j'ai upgradé régulièrement ma ubuntu j'ai 2 versions de postgresql dans etc, la 8.3 et la 8.4. Je n'ai rien fait de spécial pour passer de la première à la seconde après la mise à jour. Le fichier pg_hba.conf est celui de la 8.4.
rechargé la configuration ? désolé je ne comprends pas à quoi cela correspond. Relancer le serveur postgresql ? Dans ce cas la réponse est oui.

Hors ligne

#11 08/12/2009 09:56:48

gleu
Administrateur

Re : davical postgresql

Si vous avez relancer le serveur PostgreSQL, cela a rechargé la configuration. Du coup, vu le message d'erreur que vous avez et le fichier que vous nous donnez, il me semble que vous n'avez pas configuré le bon. pg_lsclusters vous indiquera les serveurs en cours d'exécution ainsi que l'emplacement des fichiers de configuration pour chaque serveur.


Guillaume.

Hors ligne

#12 08/12/2009 16:01:45

philippen
Membre

Re : davical postgresql

Autrement dit,le problème ne viendrait pas des fichiers de configuration sur lesquels nous travaillons depuis un moment, mais plutôt de postgresql lui-même.
C'est une hypothèse qui m'a effleuré l'esprit, notamment parce qu'une partie de l'installation de la base davical est automatique.
Procédons dans l'ordre
pg_lscluster m'indiquera quel serveur (8.3 ou 8.4) est actif sur ma distribution ?

Hors ligne

#13 08/12/2009 16:03:59

gleu
Administrateur

Re : davical postgresql

Autrement dit,le problème ne viendrait pas des fichiers de configuration sur lesquels nous travaillons depuis un moment, mais plutôt de postgresql lui-même.

C'est tout à fait le contraire smile

pg_lscluster m'indiquera quel serveur (8.3 ou 8.4) est actif sur ma distribution ?

Oui. Et ça indiquera aussi quels sont les fichiers de configuration utilisées.


Guillaume.

Hors ligne

#14 08/12/2009 22:21:59

philippen
Membre

Re : davical postgresql

Version Cluster   Port Status Owner    Data directory                     Log file
8.3     main      5432 online postgres /var/lib/postgresql/8.3/main       /var/log/postgresql/postgresql-8.3-main.log
8.4     main      5433 down   postgres /var/lib/postgresql/8.4/main       /var/log/postgresql/postgresql-8.4-main.log

Hors ligne

#15 08/12/2009 22:40:39

gleu
Administrateur

Re : davical postgresql

Donc le seul serveur actif actuellement est le serveur de 8.3. Les fichiers de configurations sont dans /etc/postgresql/8.3/main. Que contient le fichier pg_hba.conf dans ce répertoire ?


Guillaume.

Hors ligne

#16 09/12/2009 21:43:39

philippen
Membre

Re : davical postgresql

# Database administrative login by UNIX sockets
local   all         postgres                          ident sameuser

# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD

# "local" is for Unix domain socket connections only
local   all         all                  ident sameuser
# IPv4 local connections:
host    all         all         127.0.0.1/32          md5
# IPv6 local connections:
host    all         all         ::1/128               md5

Hors ligne

#17 10/12/2009 01:21:04

gleu
Administrateur

Re : davical postgresql

Donc il manque l'entrée pour la connexion « dbname=davical port=5432 user=davical_app ».

Par exemple:

local davical davical_app trust


Guillaume.

Hors ligne

#18 12/12/2009 22:15:34

philippen
Membre

Re : davical postgresql

pas de connexion possible.
je crois que je vais laisser tomber davical (d'ailleurs je ne suis pas sur que la base soit bien paramétrée, j'ai suivi le tuto à l'aveugle).
merci à nouveau pour l'aide

Hors ligne

Pied de page des forums