04/08/2008

Configuration de phpPgAdmin avec EasyPphp et wamp.

1. Présentation de phpPgAdmin:

PostgreSQL est un système de gestion de base de données relationnelles (SGDBR) libre légèrement plus puissant que MySQL. Utilisable avec le PHP, il a donc été créé un utilitaire permettant d’administrer ses bases de données PostgreSQL via une interface web : phpPgAdmin.

Grâce à son interface simple et intuitive, il est très facile d’administrer les bases de données de son serveur. Pour peu que votre utilisateur ait suffisamment de droits, vous pourrez entre autre : ajouter, supprimer ou modifier des bases de données, des tables, des données, ... Vous pourrez également gérer vos vues, séquences ou autres fonctions, ceci permettant ainsi d’optimiser votre utilisation de ce SGBDR.

La sécurité dans ce genre de logiciel étant très importante, on appréciera le fait que les développeurs aient pensé à interdire, par défaut, l’accès aux logins couramment utilisés pour les utilisateurs ayant les pleins pouvoir (postgres, root, ...). J’ai également pu apprécier le fait d’avoir une fenêtre toujours accessible pour entrer mes commandes SQL, ainsi que la présence d’un moteur de recherche permettant de trouver facilement toutes sortes de choses à partir d’un mot présents parmi leur nom.

Parmi les points faibles de ce logiciel, j’ai regretté l’absence de fonction automatique d’importation (alors que l’exportation est bien présente).

Pour conclure, ce logiciel est très utile si vous souhaitez administrer vos bases de données et malgré ses quelques défauts, on peut, sans aucun doute, lui prédire un avenir à la PHPMyAdmin si tant est que PostgreSQL progresse un peu plus dans les solutions d’hébergement avec bases de données.

Nombre de développeur utilise wamp ou Easyphp sur leur station de travail.
Ces outils sont malheureusement fourni avec MySQL par défaut, nous allons vous montrer comment intégrer PhpPgAdmin dans ces environnements.

2. Configuration dans EasyPhp:

  • Pré réquis:
Avoir EasyPHP d’installé (téléchargement), Télécharger la dernière version de phpPgAdmin (téléchargement) Avoir PostgreSQL d'installé et correctement configuré(visitez ce site).
  • Convention
Nous nommerons ${EASYPHP} le répertoire où est installé EasyPHP. Dans mon cas, je l'ai installé dans c:\easyphp. Donc ${EASYPHP} = c:\easyphp.

Nous nommerons ${PGHOME} le répertoire où est installé postgresql. Dans mon cas, je l'ai installé dans C:\\Program Files\\PostgreSQL\\8.1. Donc ${PGHOME}= C:\\Program Files\\PostgreSQL\\8.1.
  • Installation de phpPgAdmin
Après avoir téléchargé phpPgAdmin, il faut l'extraire à la racine de Easyphp (${EASYPHP}) au même endroit que le repertoire phpmyadmin. On prend soin de renommer le dossier en phppgadmin (tout en minuscule).

Pour le configurer, rien de plus simple, éditons le fichier ${EASYPHP}\phppgadmin\conf\config.inc.php. PhpPgAdmin peut gérer plusieurs serveurs, ici, nous verrons le cas le plus simple : Un serveur local.

config.inc.php
$conf['servers'][0]['desc'] = 'PostgreSQL en local';
$conf['servers'][0]['host'] = '127.0.0.1';
$conf['servers'][0]['defaultdb'] = 'template1';
$conf['extra_login_security'] = false; // par défaut à true, mais je souhaite me connecter avec le compte postgres,
$conf['servers'][0]['pg_dump_path'] = '${PGHOME}\\bin\\pg_dump.exe'; // il faut verifier le chemin de votre installation
$conf['servers'][0]['pg_dumpall_path'] = '${PGHOME}\\bin\\pg_dumpall.exe';


A noter que l'on ne configure pas le login/mot de passe dans le fichier de configuration, c'est volontaire ! Ce sera au moment de la connexion qu'il nous demandera de s'authentifier.
  • Modification des fichiers de configuration d'EasyPHP:
- Apache:
On accède à la configuration d'Apache, en procédant à un clique droit sur l'icône EasyPHP à coté de l'heure Configuration --> Apache

On recherche la ligne Alias /mysql/ et on se place comme sur la capture d'écran pour y ajouter le texte ci-dessous :
httpd.conf
Alias /pgsql/ "${path}/phppgadmin/"
Options FollowSymLinks Indexes
AllowOverride None
Order deny,allow
allow from 127.0.0.1
deny from all
- Module PHP:
Maintenant on active le module php_pgsql, pour cela on va dans Configuration --> Extensions PHP et on coche php_pgsql.

C'est fini, il faut maintenant tester http://localhost/phppgadmin

3. Configuration avec wamp:

D'abord installer wamp si c'est pas déjà fait (téléchargement).
La configuration de phpPgAdmin reste la même qu'au chapitre précedent. Le repertoire phpPgAdmin sera dans ce cas placé dans ${WAMP}\apps (dans mon cas ${WAMP}= c:\wamp) à côté du repertoire phpmyadmin.
  • Modification des fichiers de configuration de wamp:
-Apache: (configuration de l'alias)
La configuration de l'alias se fera de la sorte: Apache --> Répertoire Alias --> Créer un alias
Dans l'invite de commande proposé, entrer /phppgadmin/ puis tapper "entrée", ensuite dans l'invite de commande suivante entrer le repertoire d'installation de phpPgAdmin C:/wamp/apps/phpPgadmin-4.2 (dans mon cas) puis tapper "entrée". votre fichier httpd.conf est à présent configuré.

-Module PHP:
Il ne reste plus qu'à configure PHP pour qu'il tienne compte de postgresql. Ceci via
PHP -->Extensions PHP --> php_pgsql
Redémarrer wamp et s'assurer que Postgresql est demmaré enfin tester http://localhost/phppgadmin/.

Félicitation.

4. Liens utiles:

http://dgriessinger.developpez.com/postgresql/easyphp-phppgadmin/

3 commentaires:

Sanou a dit…

Un article que je crois assez détaillée sur comment faire pour disposer d'un environnement homogène de gestions en même de vos bases de données MySql et PostgreSql.

Vos remarques et suggestions sont les bienvenues afin d'améliorer le blog.

A très bientôt pour d'autres articles.

Unknown a dit…

Vraiment parfait comme tutorial ! Merci.

Unknown a dit…

Je suis moi aussi très contente de cet article, il m'a beaucoup aidée !!! Merci beaucoup !