Installer et utiliser PostgreSQL avec WampServer Difficile

Installer et utiliser PostgreSQL avec WampServer


Installer et utiliser PostgreSQL avec WampServer

PostgreSQL est un système de gestion de base de données relationnelle et objet (SGBDRO). C'est un outil libre disponible selon les termes d'une licence de type BSD.

Ce système est concurrent d'autres systèmes de gestion de base de données, qu'ils soient libres (comme MySQL et Firebird), ou propriétaires (comme Oracle, Sybase, DB2 et Microsoft SQL Server). Comme les projets libres Apache et Linux, PostgreSQL n'est pas contrôlé par une seule entreprise, mais est fondé sur une communauté mondiale de développeurs et d'entreprises.

Source : Wikipédia

¤ Première partie : installer PostgreSQL

Nous allons dans un premier temps nous rendre sur le site de PostgreSQL afin d'y télécharger le moteur. Dans le menu du haut, vous allez cliquer sur Downloads. Puis dans la partie Binary packages, cliquez sur Windows. Dans la partie One click installer, cliquez sur Download.
On arrive alors sur le site d'EnterpriseDB, et on va y sélectionner la version correspondante à notre système d'exploitation. Cliquez sur l'image qui correspond à l'architecture de votre version de Windows. Patientez un peu, la fenêtre de téléchargement s'ouvre.

Une fois le fichier téléchargé, exécutez-le afin de lancer la procédure d'installation de PostgreSQL. Cliquez sur Suivant.

Image

Nous avons ici la possibilité de choisir le chemin d'installation de PostgreSQL. Pour cette documentation, je conserverai volontairement le chemin par défaut. Vous pouvez choisir d'installer le moteur où bon vous semble. Cliquez sur Suivant.

Image

Nous avons ici la possibilité de choisir le répertoire où seront sauvegardées les données. Je vous conseille de conserver la proposition de l'installeur. Toutefois, si vous deviez les sauvegarder ailleurs, faites attention à sélectionner un répertoire sur un dossier qui n'est pas sur le disque dur système, comme c'est le cas pour Windows Vista ou Windows 7. Cliquez sur Suivant.

Image

Nous devons ici choisir un mot de passe qui servira au compte super-utilisateur. Pour information, le login de ce compte est postgres. Cliquez sur Suivant.

Image Image

Nous avons ici la possibilité de changer le port du serveur PostgreSQL. Je vous conseille de laisser celui proposé par défaut par l'installeur. Cliquez sur Suivant.

Image

Nous avons ici la possibilité de choisir la locale. Comme précédemment, je vous conseille de conserver la sélection par défaut de l'installeur. Cliquez sur Suivant.

Image

Tous les paramètres nécessaires à l'installation sont maintenant définis. Vous pouvez cliquer sur Suivant.

Image Image

Une fois l'installation terminée, décochez Exécuter Stack Builder en sortie ? et cliquez sur Terminer.

Image

Le moteur de base de données PostgreSQL est maintenant installé sur votre ordinateur.

¤ Deuxième partie : démarrer PostgreSQL

On va maintenant utiliser le logiciel pgAdmin afin de vérifier que PostgreSQL est bien accessible. Allez dans Démarrer » Tous les programmes » PostgreSQL 9.0 et cliquez sur l'icône pgAdmin III. L'interface va alors s'ouvrir ainsi.

Image

Faites un clic droit sur la ligne PostgreSQL 9.0 (localhost:5432) et cliquez sur Se connecter.

Image

pgAdmin se connecte par défaut sur le compte super-utilisateur. Vous devez donc saisir le mot de passe défini lors de l'installation de PostgreSQL. Cliquez sur OK.

Image

Si pgAdmin arrive à communiquer avec le moteur de base de données, les informations contenues par défaut par ce dernier vont alors se charger.

Image

Maintenant que l'on sait que le moteur est bien en place et utilisable, on peut fermer pgAdmin.

¤ Troisième partie : installer PhpPgAdmin

phpPgAdmin est une application Web réalisée en langage PHP destiné à faciliter la gestion du SGBD PostgreSQL. Ce logiciel libre est distribué sous licence GNU GPL.
Bien que ne partageant maintenant plus de code, phpPgAdmin a commencé comme un fork de phpMyAdmin. Les services proposés par ces deux applications sont similaires.

Source : Wikipédia

Vous l'avez donc compris, PhpPgAdmin est l'équivalent de phpMyAdmin, mais pour PostgreSQL uniquement.
On va se rendre sur le site de l'application afin de télécharger les fichiers nécessaires.
Au moment où j'ai écrit cette documentation, l'archive au format .zip semble être corrompue. Je vous conseille donc de prendre celle qui au format .tar.gz
Avec un agent de compression/décompression comme 7-Zip, vous aurez la possibilité de pouvoir extraire ce type de format.

Une fois l'archive téléchargée, décompressez son contenu dans le dossier apps de votre installation de WampServer (par défaut : c:\wamp\).

Image

Pour des raisons de facilité pour la définition des chemins, je vous conseille de renommer le dossier en phppgadmin.

Image

Ouvrez maintenant ce dossier et allez dans le dossier conf. Ouvrez le fichier config.inc.php
Recherchez :

Code: Tout sélectionner
$conf['servers'][0]['host'] = '';

Remplacez par :

Code: Tout sélectionner
$conf['servers'][0]['host'] = '127.0.0.1';

Recherchez :

Code: Tout sélectionner
$conf['servers'][0]['pg_dump_path'] = '/usr/bin/pg_dump';

Remplacez par :

Code: Tout sélectionner
$conf['servers'][0]['pg_dump_path'] = 'C:\\Program Files\\PostgreSQL\\9.0\\bin\\pg_dump.exe';

Bien sur, vous mettez ici le chemin d'installation de PostgreSQL si vous n'avez pas conservé le chemin proposé par l'installeur. Vous noterez également l'utilisation d'un second anti-slash à chaque fois, qui sert ici de délimiteur.

Recherchez :

Code: Tout sélectionner
$conf['servers'][0]['pg_dumpall_path'] = '/usr/bin/pg_dumpall';

Remplacer par :

Code: Tout sélectionner
$conf['servers'][0]['pg_dumpall_path'] = 'C:\\Program Files\\PostgreSQL\\9.0\\bin\\pg_dumpall.exe';

Recherchez :

Code: Tout sélectionner
$conf['extra_login_security'] = true;

Remplacez par :

Code: Tout sélectionner
$conf['extra_login_security'] = false;

Sauvegardez votre fichier. PhpPgAdmin est maintenant configuré.

Toutefois, afin de pouvoir y accéder, on va de ce fait créer un alias.
Revenez en arrière afin d'accéder au dossier alias de votre installation de WampServer.
Créez un nouveau document texte et donnez lui pour nom phppgadmin.conf
Attention : l'extension de ce fichier doit être .conf et pas .conf.txt

Ouvrez ensuite ce fichier avec votre éditeur de texte et collez-y le code suivant :

Code: Tout sélectionner
Alias /phppgadmin "c:/wamp/apps/phppgadmin/" 
<Directory "c:/wamp/apps/phppgadmin/">
	Options Indexes FollowSymLinks MultiViews
	AllowOverride all
	Order Deny,Allow
	Deny from all
	Allow from 127.0.0.1
</Directory>

Bien sûr, ici aussi, si vous avez installé WampServer dans un autre dossier que celui proposé par l'installeur, vous changez le chemin. Vous noterez cette fois que les anti-slashes ont été remplacés par des slashes.
Sauvegardez votre fichier.

Pour simplifier l'accès à PhpPgAdmin, on va intégrer un lien dans la page de démarrage de WampServer.
Vous allez maintenant ouvrir le fichier wampmanager.conf qui se trouve à la racine de votre installation de WampServer à l'aide de votre éditeur de texte.

Recherchez :

Code: Tout sélectionner
mysqlServiceRemoveParams = --remove wampmysqld

Ajoutez après :

Code: Tout sélectionner
[postgresql]
postgresqlVersion = "9.0.2-1"

La version 9.0.2-1 est la version actuelle de PostgreSQL au moment où j'ai écrit cette documentation.
Sauvegardez votre fichier. Allez dans le dossier www et ouvrez le fichier index.php

Recherchez :

Code: Tout sélectionner
$mysqlVersion = str_replace('"','',$result[1]);

Ajoutez après :

Code: Tout sélectionner
preg_match('|postgresqlVersion = (.*)\n|',$wampConfFileContents,$result);
$postgresqlVersion = str_replace('"','',$result[1]);

Recherchez :

Code: Tout sélectionner
'versm' => 'MySQL Version :',

Ajoutez après :

Code: Tout sélectionner
'verspg' => 'PostgreSQL Version :',

Recherchez :

Code: Tout sélectionner
'versm' => 'Version de MySQL:',

Ajoutez après :

Code: Tout sélectionner
'verspg' => 'Version de PostgreSQL :',

Recherchez :

Code: Tout sélectionner
<dt>{$langues[$langue]['versm']}</dt>
<
dd>${mysqlVersion} &nbsp;</dd>

Ajoutez après :

Code: Tout sélectionner
<dt>{$langues[$langue]['verspg']}</dt>
<
dd>${postgresqlVersion} &nbsp;</dd>

Recherchez :

Code: Tout sélectionner
<li><a href="phpmyadmin/">phpmyadmin</a></li>

Ajoutez après :

Code: Tout sélectionner
<li><a href="phppgadmin/">phppgadmin</a></li>

Sauvegardez votre fichier. Désormais, vous pourrez accéder à PhpPgAdmin depuis la page de démarrage de WampServer.

Image

¤ Quatrième partie : Configurer WampServer

Si vous cliquez maintenant sur le lien phppgadmin, vous risquez d'avoir le message d'erreur suivant :

Vous n'avez pas compilé correctement le support de la base de données dans votre installation de PHP.

La raison est simple, nous n'avons pas activé l'extension PHP qui permet de gérer PostgreSQL.
Pour l'activer, vous allez cliquer sur l'icône de WampServer qui se situe dans la zone de notification, puis vous allez dans PHP » Extensions PHP et vous sélectionnez la ligne php_pgsql.

Image

WampServer va alors redémarrer afin de prendre en compte cette nouvelle fonctionnalité.
Rafraîchissez la page et ... vous avez toujours le même message d'erreur.
Afin d'avoir la raison de ce message, on va donc consulter les journaux d'erreurs d'Apache.
Cliquez à nouveau sur l'icône de WampServer et allez dans Apache » Apache error log

Image

On va y trouver ces lignes qui nous indiquent qu'il y a effectivement un problème :

PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.3.0/ext/php_pgsql.dll' - Le module sp\xe9cifi\xe9 est introuvable.\r\n in Unknown on line 0
[Thu Dec 16 22:04:55 2010] [notice] Apache/2.2.11 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Thu Dec 16 22:04:55 2010] [notice] Server built: Dec 10 2008 00:10:06
[Thu Dec 16 22:04:55 2010] [notice] Parent: Created child process 6076
PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.3.0/ext/php_pgsql.dll' - Le module sp\xe9cifi\xe9 est introuvable.\r\n in Unknown on line 0
<br />
<b>Warning</b>: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.3.0/ext/php_pgsql.dll' - Le module spécifié est introuvable.
in <b>Unknown</b> on line <b>0</b><br />
[Thu Dec 16 22:04:56 2010] [notice] Child 6076: Child process is running

Pour résoudre ce problème, il va nous falloir rajouter une information dans la variable Path de Windows.

Si vous êtes sous Windows XP, cliquez sur Démarrer » Exécuter. Saisissez sysdm.cpl et validez.
Si vous êtes sous Windows Vista ou Windows 7, cliquez sur Démarrer. Recherchez sysdm.cpl et validez.

La fenêtre Propriétés système va alors s'ouvrir. Cliquez sur l'onglet Paramètres système avancés, puis sur le bouton Variables d'environnement.

Image

Dans la liste Variables système, vous allez rechercher la ligne Path et cliquer deux fois dessus.
A la fin de cette ligne, vous allez coller ce qui suit :

Code: Tout sélectionner
;C:\wamp\bin\php\php5.3.0\


Image Image

Validez en cliquant sur OK et à nouveau sur OK. Vous pouvez également fermer la fenêtre Propriétés système.

Revenez maintenant sur la page où vous aviez le message d'erreur et actualisez-la.
L'interface de phpPgAdmin se lance.

Image

Vous allez maintenant cliquer à gauche sur le lien PostgreSQL marqué d'une croix rouge.
Pour accéder à l'application, il va falloir vous identifier. Le nom d'utilisateur est postgres et le mot de passe est le même que celui que vous avez saisi lors de l'installation de PostgreSQL.

Image

Cliquez sur le bouton Connexion. Vous êtes désormais connecté en tant que super-utilisateur à phpPgAdmin.

Image

Si vous souhaitez utiliser ce moteur de base de données pour un essai sur phpBB3, assurez-vous que la ligne PostgreSQL 7.x/8.x est bien marquée en Disponible.

Image

15/02/2014 - modifié par Geo pour convertir le sujet en article.
Avatar de l’utilisateur
ABDev
Programmationateur
Programmationateur
 
Rédigé le: 09 Déc 2010 à 19:13
Articles: 3
Noter cet article: 123456 Votants: 2
Mots-clés: Installer, et, utiliser, PostgreSQL, avec, WampServer

Retourner vers Base de données