Accueil
Cours
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer
Créé par
Commencer le cours
OpenClassrooms, Leading
Comment ça marche ?
E-Learning Platform in Europe
Or parfois, d'autres SGBD peuvent être plus adéquats pour des raisons multiples telles que la
simplicité, la performance ou simplement parce que vous êtes contraints de travailler avec un
SGBD autre que MySQL.
La manœuvre décrite dans ce tutoriel a été exécutée avec les versions suivantes :
EasyPHP 3.0, WampServer 2.0i, phpPgAdmin 4.2.2 et PostgreSQL 8.3.7.
Elle peut être légèrement différente selon les versions.
Installation de PostgreSQL
Téléchargement
Tout d'abord, il faut télécharger PostgreSQL, la dernière version de préférence (à l'heure où
j'écris ces lignes, la version 8.3.7).
Pour ce faire, il suffit d'aller sur la page de téléchargement du site officiel, de cliquer sur la
version voulue puis, sur la page suivante choisir « win32 », de choisir la version .zip et d'attendre
quelques secondes sur la dernière page que le téléchargement se lance ; s'il ne se lance pas
automatiquement, choisissez un lien miroir parmi ceux qui vous sont proposés.
Une fois cette archive extraite, nous pouvons voir plusieurs fichiers d'installation et de mise à
jour.
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
Le seul fichier qui nous sera utile pour ce tutoriel est le fichier postgresql-8.3.msi, on le lance
donc, et une belle fenêtre apparaît.
Choisissez votre langue si ce n'est pas déjà fait puis cliquez sur « Start > ».
La fenêtre suivante est un simple avertissement vous demandant de fermer tous vos
programmes en cours, cliquez simplement sur « Suivant > ».
La troisième fenêtre contient les notes d'installation à lire avant l'installation. Cliquez encore sur
« Suivant > ».
La fenêtre suivante est plus importante, elle permet de configurer les options.
Si vous ne savez pas où vous mettez les pieds, laissez par défaut, sinon, selon vos besoins,
activez ou désactivez les options que vous voulez installer ou non.
Afin que PostgreSQL soit installé dans les fichiers d'EasyPHP/WampServer (ce qui n'est pas
une obligation), sélectionnez « PostgreSQL », cliquez sur « Parcourir », et allez chercher le
dossier d'installation d'EasyPHP/WampServer et rajoutez au chemin « postgresql\ », afin
d'obtenir un dossier d'installation similaire à celui de l'image.
Enfin, cliquez sur « Suivant > ».
Laissez par défaut, saisissez deux fois votre mot de passe puis cliquez de nouveau sur «
Suivant > », là une fenêtre s'affiche pour confirmer la création de l'utilisateur « VOTRE-
PC\postgres », cliquez sur « Oui ».
À ce niveau de l'installation, il est possible qu'une fenêtre vous disant que le mot de
passe que vous avez spécifié est faible et vous propose d'en générer un autre. Libre à
vous d'en générer un nouveau (sachant, je vous préviens, que le mot de passe généré
comportera environ trente caractères en tous genres : chiffres, lettres et symboles). Si
vous cliquez sur « Oui », pensez à le noter !
Vous devez saisir ici le nom d'utilisateur et le mot de passe qui seront nécessaires à la
connexion à la base de données, que ce soit dans vos scripts ou dans phpPgAdmin, saisissez
donc deux fois votre mot de passe, et cliquez sur « Suivant > ».
L'étape suivante est l'activation des langages de procédures, si vous avez laissé la configuration
par défaut, seule la case à cocher « PL/pgsql » est disponible et est déjà cochée, laissez-la
comme telle, puis cliquez sur « Suivant > ».
L'étape qui suit est la dernière étape avant l'installation des fichiers sur votre ordinateur.
Cette étape vous propose différents « modules de contribution », chacun de ces modules fournit
des fonctionnalités, plus ou moins utiles selon l'utilisation que vous ferez de PostgreSQL. Vous
trouverez une description précise de chacun de ces modules dans le manuel PostgreSQL
spécifique à la version.
Cochez les cases des modules qui vous intéressent, puis cliquez sur « Suivant > ».
L'étape suivante vous informe que PostgreSQL est prêt à être installé. Cliquez simplement sur «
Suivant > » pour lancer l'étape finale de l'installation.
Une fois l'installation terminée, un message de confirmation apparaît, vous proposant d'exécuter
« Stack Builder ».
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
Stack Builder vous permet d'installer des pilotes supplémentaires, des modules et d'autres
logiciels, laissez la case cochée si vous voulez voir ce qu'il peut vous proposer, sinon décochez-
la et cliquez enfin sur « Terminer ».
Une fenêtre apparaît, vous demandant votre mot de passe, il s'agit du second mot de passe que
vous avez saisi lors de la configuration.
Installation de phpPgAdmin
Téléchargement
Le téléchargement se fait sur le site officiel de phpPgAdmin, il vous suffit de cliquer sur l'un des
trois liens proposés et d'attendre quelques secondes sur la page suivante.
Installation et configuration
Une fois le téléchargement fini, on obtient une archive qui, une fois extraite, nous révèle un
dossier du même nom que l'archive :
Sous WampServer:
Maintenant qu'il est au bon endroit, nous allons le configurer pour qu'il puisse se connecter à
PostgreSQL. Pour ce faire, ouvrez le fichier « phppgadmin\conf\config.inc.php » avec l'éditeur de
texte de votre choix puis exécutez les actions suivantes :
Chercher
html+php
$conf['servers'][0]['host'] = '';
Remplacer par
html+php
$conf['servers'][0]['host'] = '127.0.0.1';
Chercher
html+php
$conf['servers'][0]['pg_dump_path'] = '/usr/bin/pg_dump';
Remplacer par
html+php
$conf['servers'][0]
['pg_dump_path'] = 'DOSSIER_POSTGRESQL\\bin\\pg_dump.exe';
Chercher
html+php
$conf['servers'][0]['pg_dumpall_path'] = '/usr/bin/pg_dumpall';
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
Remplacer par
html+php
$conf['servers'][0]
['pg_dumpall_path'] = 'DOSSIER_POSTGRESQL\\bin\\pg_dumpall.exe';
Cette dernière modification (facultative) permet l'emploi d'utilisateurs interdits par défaut : pgsql,
postgres, root, administrator ainsi que les connexions sans mot de passe.
Chercher
html+php
$conf['extra_login_security'] = true;
Remplacer par
html+php
$conf['extra_login_security'] = false;
Une fois ces modifications faites, vous pouvez enregistrer puis fermer ce fichier.
Nous allons maintenant configurer Apache pour faire pointer votre « 127.0.0.1/home/pgsql/ » sur
votre dossier « phppgadmin ».
Sous EasyPHP, ouvrez le fichier « DOSSIER_EASYPHP\conf_files\httpd.conf » et exécutez les
opérations suivantes :
Chercher
text
Alias /home/mysql "${path}/phpmyadmin"
Ajouter après
text
Alias /home/pgsql "${path}/phppgadmin"
Chercher
text
<Directory "${path}/phpmyadmin">
Options FollowSymLinks Indexes
AllowOverride None
Order deny,allow
allow from 127.0.0.1
deny from all
</Directory>
Ajouter après
text
<Directory "${path}/phppgadmin">
Options FollowSymLinks Indexes
AllowOverride None
Order deny,allow
allow from 127.0.0.1
deny from all
</Directory>
Sous WampServer,
allez dans le dossier DOSSIER_WAMPSERVER\Alias\ et créez le fichier « pgsql.conf »
contenant ce qui suit :
apache
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
Enfin, la dernière action pour que le tout fonctionne est d'activer l'extension « php » nommée «
php_pgsql ». Pour ce faire, sous EasyPHP, ouvrez le fichier «
DOSSIER_EASYPHP\conf_files\php.ini » et exécutez les opérations suivantes :
Chercher
text
;extension=php_pgsql.dll
Remplacer par
text
extension=php_pgsql.dll
Sous WampServer, cochez simplement la case « php_pgsql » à partir de l'icône située dans la
barre des tâche, puis cliquez sur « PHP>PHP Extensions » :
Vous pouvez aussi essayer de vous connecter en cliquant sur votre serveur à gauche, et en
saisissant vos identifiants PostgreSQL.
Intégration à EasyPHP
Cette étape est facultative, vous devriez avoir à l'heure actuelle une installation PostgreSQL +
phpPgAdmin fonctionnelle ; ce chapitre consiste à intégrer des liens d'accès dans la page
d'administration d'EasyPHP vers phpPgAdmin.
Voici à quoi ressemblera votre installation à la fin de cette étape :
Ensuite, trouvez les fichiers des licences de PostgreSQL et de phpPgAdmin qui devraient être
respectivement dans « DOSSIER_EASYPHP\postgresql\ » et «
DOSSIER_EASYPHP\phppgadmin\ ».
Copiez ces deux licences dans « DOSSIER_EASYPHP\home\ », puis renommez-les
respectivement en « licence_postgresql.php » et « licence_phppgadmin.php ». Il est probable
que lorsque vous les renommerez, un message de confirmation apparaisse, vous demandant si
vous êtes sûr de vouloir modifier l'extension des fichiers. Dans ce cas, confirmez en cliquant sur
« Oui ».
<?php
include("i18n.inc.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<link rel="shortcut icon" href="images_easyphp/easyphp_favicon.ico" />
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
<title>[EasyPHP] - PostgreSQL</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="styles.css" type="text/css" />
</head>
<body>
<?php
include("functions.inc.php");
include("header.inc.php");
?>
<div id="body">
<div class="container">
<br />
<?php
button("postgresql", "licence_postgresql.php", "", "#7F7F7F", 0);
?>
<br /><br />
<?php printf($licence_rem, "
[<a href='http://www.postgresql.org' target='_blank' class='text1'>PostgreSQL</a>]"); ?
>
<br /><br />
<div class="box_top">
<img src="images_easyphp/box_top.gif" width="760" height="2" alt="--
- top box ---" /></div>
<div class="box_body">
<div class="content">
<pre>
</pre>
</div>
</div>
<div class="box_bottom">
<img src="images_easyphp/box_bottom.gif" width="760" height="2" alt="--
- bottom box ---" />
</div>
</div>
</div>
</body>
</html>
<?php
include("i18n.inc.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<link rel="shortcut icon" href="images_easyphp/easyphp_favicon.ico" />
<title>[EasyPHP] - PhpPgAdmin</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="styles.css" type="text/css" />
</head>
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
<body>
<?php
include("functions.inc.php");
include("header.inc.php");
?>
<div id="body">
<div class="container">
<br />
<?php
button("phppgadmin", "licence_phppgadmin.php", "", "#7F7F7F", 0);
?>
<br /><br />
<?php printf($licence_rem, "
[<a href='http://phppgadmin.sourceforge.net' target='_blank' class='text1'>PhpPgAdmin</a>]"); ?
>
<br /><br />
<div class="box_top">
<img src="images_easyphp/box_top.gif" width="760" height="2" alt="--
- top box ---" /></div>
<div class="box_body">
<div class="content">
<pre>
</pre>
</div>
</div>
<div class="box_bottom">
<img src="images_easyphp/box_bottom.gif" width="760" height="2" alt="--
- bottom box ---" />
</div>
</div>
</div>
</body>
</html>
Les modifications que nous venons de faire sur les fichiers de licence permettent de mettre en
page ces licences. En effet, si avez ouvert la licence avant de faire ces modifications, vous
n'auriez vu qu'un fichier texte, les quelques lignes que nous avons rajouter permet d'ajouter le
logo d'EasyPhp et quelques liens supplémentaires à ce fichier texte.
Chercher
html+php
$sqlite_manager = "sqlite_administration";
Ajouter après
html+php
$pgsql_manager = "postgresql_administration";
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
Chercher
html+php
<?php
Ajouter après
html+php
$version_postgresql = "8.3.7";
$version_phppgadmin = "4.2.2";
Chercher
html+php
</div>
</div>
</body>
</html>
Ajouter avant
html+php
<div class="content_left">
<img src="images_easyphp/phppgadmin.gif" width="122" height="18" alt="PhpPGAdmin" border="0" />
<?php version($version_phppgadmin) ?>
</div>
<div class="content_right">
<?php
button($pgsql_manager, "pgsql", "target='_blank'", "#7F7767", 0);
button($licence, "licence_phppgadmin.php", "", "#7F7F7F", 0);
?>
</div>
<div class="content_left">
<img src="images_easyphp/postgresql.gif" width="122" height="18" alt="PostgreSQL" border="0" />
<?php version($version_postgresql) ?>
</div>
<div class="content_right">
<?php
button($licence, "licence_postgresql.php", "", "#7F7F7F", 0);
?>
</div>
C'est fini, vous voilà avec une administration EasyPHP comme si PostgreSQL et phpPgAdmin
étaient installés par défaut avec.
Intégration à WampServer
Comme pour EasyPHP, cette étape est facultative, d'autant plus que vous devriez déjà voir
apparaître un lien vers pgsql en bas à gauche de la page d'accueil de WampServer ;
néanmoins, je suis du genre à avoir le souci du détail. Ainsi ce chapitre aura pour but de rajouter
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
Chercher
text
mysqlServiceRemoveParams = --remove wampmysqld
Ajouter après
text
[postgresql]
postgresqlVersion = "8.3.7"
Chercher
html+php
preg_match('|mysqlVersion = (.*)\n|',$wampConfFileContents,$result);
$mysqlVersion = str_replace('"','',$result[1]);
Ajouter après
html+php
preg_match('|postgresqlVersion = (.*)\n|',$wampConfFileContents,$result);
$postgresqlVersion = str_replace('"','',$result[1]);
Chercher
html+php
<dt>{$langues[$langue]['versm']}</dt>
<dd>${mysqlVersion} </dd>
Ajouter après
html+php
Chercher
html+php
<li><a href="phpmyadmin/">phpmyadmin</a></li>
Ajouter après
html+php
<li><a href="pgsql/">phppgadmin</a></li>
La version de PostgreSQL ainsi que le lien vers phpPgAdmin dans les outils devraient
maintenant s'afficher :
Citation : phpPgAdmin
Pour pallier ce problème, il suffit de mettre la variable PHP display_errors à off. Pour ce faire,
ouvrez le fichier DOSSIER_PHPPGADMIN\conf\config.inc.php et exécutez les actions suivantes.
Chercher
html+php
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
<?php
Ajouter après
html+php
ini_set("display_errors", "off");
En espérant qu'un volontaire sorte une version de phpPgAdmin compatible avec les prochaines
versions de PHP ! ;)
Une fois que tout est correctement installé et paramétré, vous pouvez double-cliquer sur l'icône
WampServer sur le bureau de Windows pour enfin travailler avec PostgreSQL.
Si tout va bien… :ange: Inutile de lire la suite de ce paragraphe, vous pouvez utiliser
PostgreSQL à travers Wamp (ou allez à la pêche :lol: ).
Pas de panique !
Voyons pourquoi ce problème existe et comment le résoudre.
PHP dans Wamp ne retrouve pas intuitivement le chemin des extensions dans l'arborescence
du disque dur.
Il faut expliciter le chemin de PHP dans la variable d'environnement [PATH] de Windows.
Voici comment s’y prendre :
Ouvrez le « panneau de configuration » et sélectionnez « Système ».
La fenêtre « propriétés systèmes » s'ouvre alors
Choisir l'onglet « Avancé »
et cliquer sur le bouton « Variables d'environnement » (en bas de cette fenêtre).
Ajouter, à la fin :
text
C:\wamp\bin\php\php5.3.X;
X est le dernier numéro de la version 5.3 de PHP installé sur votre machine.
Sur Wamp 2.0i c'est la version 5.3.0.
Sur Wamp 2.1e (sortie début janvier 2011) c'est la version 5.3.5.
Ne pas oublier le « ; » (point-virgule) qui doit terminer l'instruction.
Valider par le bouton « O.K. »… trois fois de suite, pour enregistrer et quitter toutes les fenêtres
successives qui ont été ouvertes.
Fermer le panneau de configuration.
Redémarrer Windows pour que les nouvelles valeurs de la variable [Path] soient prises
en compte.
Maintenant, vous n'aurez plus ce message et le module php_pgsql.dll sera reconnu, vous
pouvez enfin utiliser PostgreSQL avec Wamp.
Au travail !
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]
Installation de PostgreSQL et de phpPgAdmin avec EasyPHP/WampServer - OpenClassrooms
Si après une erreur de configuration ou pour toute autre raison, vous devez réinstaller
PostgreSQL, il y a une démarche un peu spéciale à suivre.
Première étape : désinstallez PostgreSQL à partir du panneau de configuration comme tout
autre programme.
Deuxième étape : supprimez le dossier PostgreSQL de l'endroit où il était installé (par exemple «
DOSSIER_EASYPHP\postgresql »).
Troisième étape : supprimez le dossier utilisateur créé par PostgreSQL dans « C:\Documents
and Settings\ ».
Dernière étape : supprimez l'utilisateur créé par PostgreSQL en lançant l'invite de commandes
(Menu démarrer > Exécuter > Entrez « cmd », puis validez en appuyant sur la touche « Entrée ».
Dans la fenêtre qui s'ouvre, saisissez (pensez à remplacer « UTILISATEUR » par le nom de
l'utilisateur PostgreSQL, par exemple postgres) :
net user UTILISATEUR /delete
Les professeurs
http://www.2b-alu.fr
https://www.facebook.com/2BAlu83/
Allet
English
English
Español
Español
https://openclassrooms.com/courses/installation-de-postgresql-et-de-phppgadmin-avec-easyphp-wampserver[19/01/2018 23:22:23]