Page suivantePage pr�c�denteTable des mati�res

3. Proc�dure d'installation

3.1 Mat�riel requis

Aucune supposition ne peut �tre faite sur les besoins en mat�riel d'un serveur de base de donn�es. Cela d�pend trop du nombre d'utilisateurs, du type d'application, de la charge du r�seau, etc. Dans un environnement comprenant peu d'utilisateurs et un trafic r�seau faible, un 486 ou �quivalent, avec 16 MO de m�moire vive, peut �tre suffisant. Linux, le syst�me d'exploitation, est tr�s efficace en termes de ressources, et peut fournir suffisamment de puissance pour faire tourner un grand nombre d'applications en m�me temps. Bien s�r, un processeur plus puissant et plus de m�moire vive signifient plus de puissance, mais la quantit� de m�moire vive est plus importante que le processeur. Plus le syst�me a de m�moire vive, moins il est oblig�, en cas de besoin, de swapper les processus les plus gourmands en m�moire sur le disque.

Avec un syst�me �quip� de 32 MO de m�moire vive et d'un bus PCI, les recherches et op�rations de tri peuvent �tre faites sans avoir recours au(x) fichier(s) d'�change (swap), donnant d'excellents r�sultats.

L'installation d�crite dans cet article a �t� faite sur un IBM 686 � 133MHz, avec 32 MO de m�moire vive et un disque dur IDE de 1.2 GO. La suite du document pr�sente les �tapes indispensables � une installation compl�te.

3.2 Logiciel

Les logiciels d�crits dans cet article sont disponibles sur Internet, ou sur CD-ROM. Les produits suivants sont utilis�s :

3.3 Installation de l'OS

Linux est install� � partir de la distribution Red Hat Linux 4.2. Pour r�ussir � l'installer, la machine doit avoir un lecteur de CD-ROM accessible � partir de MSDOS, un lecteur de CD-ROM bootable, ou bien encore une disquette de boot pr�par�e selon les instructions du CD Linux.

Pendant l'installation, l'utilisateur peut s�lectionner et configurer de nombreux paquetages logiciels. Il convient de s�lectionner les suivants :

Tous ces paquetages sont fournis avec la distribution Linux. Si vous ne les installez pas maintenant, vous pourrez le faire plus tard en utilisant glint, le gestionnaire graphique de paquetages logiciels. Assurez-vous d'�tre connect� comme utilisateur root lorsque vous les installerez.

Il n'est pas du ressort de cet article de d�crire l'installation r�seau, ni la proc�dure d'initialisation. Pour cela, consultez la documentation en ligne (pages de manuel, HTML, texinfo) et imprim�e (Bible Linux, etc.).

La proc�dure d'installation de Red Hat est tr�s au point et n�cessite peu d'interaction de la part de l'utilisateur, en dehors des choix courants (les noms de machines, par exemple). Une fois l'installation termin�e, le syst�me est pr�t � tourner.

L'installation de XWindow n'est pas obligatoire pour le serveur, mais cela rend les acc�s locaux et les tests plus faciles. La proc�dure d'installation de XWindow peut �tre conduite par diff�rents programmes ; XF86Setup offre le plus de facilit� d'auto-test, et demande peu de connaissance des menus d�tails (la programmation de l'horloge vid�o, etc.). La seule contrainte est que le logiciel puisse d�tecter l'adaptateur vid�o. Des cartes graphiques acc�l�ratrices bon march� (comme les cartes bas�es sur le chip Trio S64, avant le S64UV+) fonctionnent sans aucun probl�me.

A partir de maintenant, nous supposons que le syst�me tourne, et que Apache, Perl et XWindow ont �t� install�s avec succ�s. Nous supposons de m�me que les fichiers et structure de r�pertoires sont tels que d�finis dans l'installation. Enfin, nous laissons le nom de la machine tel quel, et pour le moment, supposons que c'est localhost. Nous utiliserons ce nom pour tous les tests d'installation ; d�s que le syst�me fonctionnera, le v�ritable nom pourra �tre ajout�. Notez que l'installation r�seau suppose d'�diter le fichier /etc/hosts, entre autres. Cela peut �tre pris en charge par les outils d'administration fournis � l'utilisateur root.

3.4 Le serveur HTTP

Le serveur HTTP fourni avec Linux est Apache, httpd pour le syst�me. La page de manuel (man httpd) explique comment installer et d�marrer le d�mon http (donc httpd) mais, comme il a �t� indiqu� plus haut, si l'installation s'est bien pass�e, le serveur HTTP doit tourner. V�rifiez l'arborescence des r�pertoires : le r�pertoire /home/httpd doit exister, avec trois sous-r�pertoires : ../cgi-bin/, ../html/ and ../icons/. Dans ../html/, vous devez trouver un fichier index.html. Plus tard, nous modifierons ou remplacerons ce fichier par notre propre index.html. Toute la configuration se fait dans le fichier /etc/httpd/conf/. Le syst�me est correctement pr�configur� et ne doit pas �tre modifi�, si l'installation s'est faite sans probl�me.

3.5 Les navigateurs

Il existe trois types de navigateurs disponibles sous Linux : les logiciels purement textuels, comme Lynx, des logiciels simples et exp�rimentaux comme Arena (gratuit) et des logiciels commerciaux, comme Netscape (partagiciel !) avec support de Java int�gr�. Alors que Lynx et Arena sont fournis avec Linux, Netscape doit �tre r�cup�r� par d'autres sources. Netscape est disponible sous forme de fichier binaire pr�compil� pour Linux sur architecture ix86 et tourne "tel quel" une fois l'archive d�compress�e.

Configuration de Lynx

Une fois Lynx d�marr�, il cherche une 'URL par d�faut' qui n'existe pas toujours si le syst�me n'a pas d'acc�s Internet permanent. Pour changer cette URL par d�faut (ainsi que d'autres d�tails de configuration), l'administrateur doit �diter le fichier /usr/lib/lynx.cfg. Ce fichier est gros, environ 57000 octets, et contient des informations quelquefois contradictoires. Il �tablit son propre r�pertoire dans /usr/local/lib. Au d�but du fichier figure une ligne commen�ant par STARTFILE. Remplacez cette ligne par la suivante : STARTFILE:http://localhost, en vous assurant qu'il n'y a pas d'espace en trop :


# STARTFILE:http://www.nyu.edu/pages/wsn/subir/lynx.html
STARTFILE:http://localhost

Apr�s avoir enregistr� le fichier, Lynx doit maintenant ouvrir notre index.html s'il est lanc� sans argument.

Configuration d'Arena

S'il est lanc� sans argument, Arena recherche son URL par d�faut. Cette URL est cod�e en dur dans l'ex�cutable, mais peut �tre red�finie en utilisant la variable d'environnement WWW_HOME. L'administrateur syst�me peut placer la ligne suivante dans le fichier /etc/profile : WWW_HOME="http://localhost". Cette variable doit �tre export�e, soit par l'ajout de la ligne ad�quate (export WWW_HOME), soit en ajoutant WWW_HOME � la ligne d'export courante :


WWW_HOME="http://localhost"
export WWW_HOME

A la prochaine connexion, la nouvelle URL par d�faut d'Arena sera connue du syst�me.

Installation et Configuration de Netscape

Netscape �tait un produit commercial, et n'est donc pas inclus dans les anciennes distributions Linux. N�anmoins, il est t�l�chargeable par Internet, ou accessible � partir de certaines compilations de logiciels sur CD-ROM. Netscape est fourni sous la forme de fichiers binaires pr�compil�s pour les plates-formes les plus courantes. Avant de l'installer, il est utile de cr�er le r�pertoire /usr/local/Netscape, dans lequel l'archive sera d�compact�e. Tous les fichiers doivent rester � cette place (sauf la biblioth�que Java : suivez les instructions du fichier README fourni avec les binaires de Netscape), et il suffira de cr�er un lien symbolique avec /usr/local/bin par la commande :

# ln -s /usr/local/Netscape/netscape .

depuis le r�pertoire /usr/local/bin/.

Netscape est maintenant pret � �tre utilis�, et peut �tre configur� par le menu "Options". Dans "General Preferences", il y a un onglet intitul� "Appearance", avec un champ de saisie "Home Page Location". Tapez http://localhost, et n'oubliez pas de sauvegarder les options (par le menu "Options" -- "Save Options") avant de quitter Netscape. Au prochain d�marrage, Netscape pr�sentera la page d'accueil d'Apache.

3.6 Les navigateurs avec Apache

Faites maintenant le premier test d'Apache avec un navigateur : lancez simplement l'un des navigateurs disponibles, et il affichera la page d'accueil Apache : Red Hat Linux Web Server. Cette page indique la localisation des fichiers et d'autres informations concernant l'installation du serveur http. Si cette page ne s'affiche pas, v�rifiez que les fichiers cit�s plus haut sont bien en place et que la configuration du navigateur est correcte. Fermez les fichiers de configuration avant de d�marrer de nouveau le navigateur. Si tous les fichiers sont install�s et que le navigateur semble correctement configur�, examinez la configuration du r�seau. Ou bien le nom de votre machine est diff�rent de celui sp�cifi� lors de la configuration, ou bien la configuration r�seau n'est pas correcte. Il est particuli�rement important que /etc/hosts contienne au moins la ligne suivante :


127.0.0.1                     localhost localhost.localdomain

qui suppose que vous pouvez vous connecter localement. Vous pouvez le v�rifier en lan�ant une commande r�seau qui r�clame un nom de machine comme argument, comme telnet localhost (en supposant que telnet soit install�). Si cela ne fonctionne pas, la configuration r�seau doit �tre control�e avant de continuer l'intallation.

3.7 La Base de donn�es et son installation

L'installation de la base de donn�es demande � peine plus de pr�paration que les �tapes pr�c�dentes. Il y a quelques moteurs de base de donn�es SQL disponibles, avec des contraintes d'administration et d'ex�cution diff�rentes ; l'un des plus simples est msql, dit aussi "Mini-SQL", �crit par David Hughes. Msql est un "partagiciel". En fonction de la version utilis�e, les sites commerciaux sont redevables de 250 US$, voire plus, les utilisateurs priv�s d'au moins 65 US$, et seules les institutions scolaires et les entreprises � but non lucratif peuvent utiliser ce logiciel librement. Les termes exacts des droits figurent dans la documentation de la base de donn�es. Les �l�ments donn�es ici ne sont qu'indicatifs.

Tout d'abord, voici en quelques mots pourquoi l'auteur a choisi msql. Il y a tout d'abord une exp�rience personnelle. Alors qu'il cherchait une base de donn�es, l'auteur a trouv� que msql �tait la plus facile � installer et � maintenir, et qu'elle couvrait un ensemble suffisamment large du langage SQL pour convenir � une utilisation classique. C'est seulement en �crivant ces lignes que l'auteur a d�couvert cette �loge dans la DBI FAQ d'Alligator Descartes (la FAQ interface perl aux bases de donn�es) :

Du point de vue de l'auteur, si le volume de donn�es est relativement faible, les tables contenant moins d'1 million de lignes, avec moins de 1000 tables dans une base donn�e, alors msql constitue une solution parfaitement acceptable. Cette base de donn�es est tr�s bon march�, extraordinairement solide, et offre un excellent support, ...

Mqsl est disponible en deux versions, msql-1.0.16 et msql-2.0.1, qui diff�rent par leurs performances (cela n'est sensible que sur des petits projets) et les logiciels les accompagnant (la version la plus r�cente dispose de plus d'outils, de son propre langage de script, etc.). Nous d�crirons les deux versions de msql, car leurs installations se distinguent par quelques aspects.

Installation de msql-1.0.16

Msql est disponible sous forme de sources et de binaires pr�compil�s au format ELF. L'utilisation des binaires ELF rend l'installation plus simple, car l'archive msql-1.0.16.ELF.tgz contient une copie de l'arborescence d'installation, pour que les r�pertoires soient g�n�r�s correctement lors du d�compactage dans le r�pertoire /.

Si vous d�cidez de compiler msql-1.0.16 vous-m�me, et que vous voulez utiliser le paquetage MsqlPerl plutot que l'interface DBI (voir plus loin une pr�sentation d�taill�e des diff�rence entre les deux strat�gies), alors attendez-vous � ce que MsqlPerl rapporte, lors des tests d'installation, des erreurs dans msql. Dans ce cas, une correction sera n�cessaire, expliqu�e dans la documentation MsqlPerl (fichier patch.lost.tables). En l'occurrence, il faut inclure les trois lignes suivantes dans msqldb.c, apr�s la ligne 1400, contenant entry->def = NULL; :

*(entry->DB) = 0;
*entry->table) = 0;
entry->age = 0;

Cette partie de code doit maintenant �tre la suivante :


 freeTableDef(entry->def);
 safeFree(entry->rowBuf);
 safeFree(entry->keyBuf);
 entry->def = NULL;
 *(entry->DB) = 0;
 *entry->table) = 0;
 entry->age = 0;

La compilation de msql comprend plusieurs �tapes. Apr�s avoir d�compact� l'archive contenant les sources, il faut cr�er un r�pertoire destination. Cela se fait avec la commande suivante :

# make target

Si tout se passe bien, le syst�me r�pond avec

Build of target directory for Linux-2.0.30-i486 complete

Vous pouvez maintenant aller dans le r�pertoire que vous venez de cr�er, et taper d'abord la commande

# ./setup

La s�quence ./ est n�cessaire pour s'assurer que la commande setup ex�cut�e est bien celle du r�pertoire courant, et non une autre qui aurait le m�me nom. On va maintenant vous poser quelques questions concernant le r�pertoire source, et la localisation du r�pertoire d'installation. Une fois que ces questions ont eu leur r�ponse, le syst�me lance quelques tests pour v�rifier que les logiciels n�cessaires (compilateurs, utilitaires divers, etc.) sont pr�sents, puis finalement r�pond

Ready to build mSQL.

You may wish to check "common/site.h" although the defaults should be fine. When you're ready, type "make all" to build the software

Il faut alors taper

# make all

Si tout fonctionne comme pr�vu, nous devons alors lire :

make[2] : leaving directory '/usr/local/Minerva/src/msql' <-- [msql] done

Make of mSQL complete. You should now install mSQL using make install

NOTE : mSQL cannot be used free of charge at commercial sites. Please read the doc/License file to see what you have to do.

make[1] : Leaving directory '/usr/local/Minerva/src'

Tous les binaires doivent �tre accessibles, par exemple en cr�ant des liens symboliques dans /usr/local/bin/. D�placez-vous dans ce r�pertoire et tapez la commande

# ln -s /usr/local/Minerva/bin/* .

apr�s quoi les liens sont correctement construits.

Test de msql-1

Apr�s l'installation, il est maintenant possible de tester le fonctionnement de la base de donn�es. Avant toutes choses, le serveur doit �tre d�marr�. L'administrateur syst�me, gr�ce aux privil�ges du compte utilisateur root, lance la commande

# msqld &

(n'oubliez pas d'ajouter le &, sinon msql ne tournerait pas en t�che de fond.), apr�s quoi le message suivant doit appara�tre :

mSql Server 1.0.16 starting ...
Warning : Couldn't open ACL file : No such file or directory
Without an ACL file global access is Read/Write

Ce message indique que tout fonctionne correctement, � part la configuration des droits d'acc�s. Pour le moment, il suffit de d�marrer le serveur msql � partir d'un shell, mais vous pourrez par la suite vouloir le d�marrer automatiquement au lancement du syst�me. Cette commande doit alors �tre ajout�e dans un des scripts du r�pertoire rc.d. Seul l'administrateur syst�me peut lancer la premi�re commande typique d'une base de donn�es (cr�ation de la premi�re table) :

# msqladmimn create inventur
msql r�pond alors Database "inventur" created. Comme preuve suppl�mentaire, vous pouvez constater que le r�pertoire /usr/local/Minerva/msqldb/ contient maintenant le r�pertoire ../inventur, vide pour l'intant. Vous pouvez manipuler la nouvelle base avec les outils d'administration, qui sont d�crits en d�tail dans la documentation msql.

Installation de msql-2.0.1

Une nouvelle version, plus puissante, du serveur mSQL d'Hugues est maintenant disponible. Son installation est un peu diff�rente. Installer msql-2 de z�ro n�cessite les �tapes suivantes. Copiez l'archive � l'endroit o� vous souhaitez l'installer, par exemple /usr/local/msql-2/, puis d�compressez-la :

# tar xfvz msql-2.0.1.tar.gz

Positionnez vous � la racine de l'arborescence d'installation et tapez

# make target

Placez vous dans le r�pertoire targets et v�rifiez le type de votre machine. Il devrait y avoir un nouveau sous-r�pertoire Linux-(votre version)-votre cpu). Allez dans ce r�pertoire et lancez l'utilitaire de configuration qui s'y trouve :

# ./setup

Il y a aussi un fichier site.mm qui peut �tre �dit�. Peut-�tre avez-vous d�j� utilis� le r�pertoire /usr/local/Minerva/ et souhaitez-vous le conserver intact ? Dans ce cas, changez la ligne INST_DIR=... pour indiquer le r�pertoire destination qui vous convient. Sinon, ne changez rien.

Maintenant, vous pouvez contruire la base de donn�es :

# make
# make install

Si tout marche bien, vous verrez ce message :

[...]
Installation of mSQL-2 complete.
*********
**  This is the commercial, production release of mSQL-2.0
**  Please see the README file in the top directory of the
**  distribution for license information.
*********

Une fois que tout est install� correctement, vous devez vous pr�occuper de certains d�tails d'administration. C'est ici que les diff�rences avec msql-1 commencent. D'abord, un utilisateur msql est cr��, et est responsable de l'administration de la base de donn�es.

# adduser msql

Maintenant, vous devez changer les propri�taire et groupe de tous les fichiers dans le r�pertoire de mSQL en tapant :

# cd /usr/local/Minerva
# chown -R msql:msql *

Enfin, vous pouvez cr�er les liens symboliques pour tous les �xecutables de la base de donn�es dans /usr/local/bin/ en lan�ant la commande :

# ln -s /usr/local/Minerva/bin/* .

Test de msql-2

D�marrez maintenant le serveur de la base en tapant la commande msql2d &, vous devriez obtenir cette r�ponse :

Mini SQL Version 2.0.1
Copyright (c) 1993-4 David J. Hugues
Copyright (c) 1995-7 Hughes Technologies Pty. Ltd.
All rights reserved.
 Loading configuration from '/usr/local/Minerva/msql.conf'.
 Server process reconfigured to accept 214 connections.
 Server running as user 'msql'.
 Server mode is Read/Write.
Warning : no ACL file. Using global read/write access.

Tout est parfait. La base est compil�e et install�e, et nous pouvons maintenant continuer avec les modules perl puisqu'ils demandent la pr�sence d'un serveur de base de donn�es op�rationnel pour les tests.

Au fait, ce moment est bien choisi pour imprimer la documentation compl�te livr�e avec msql-2.0.1 :

# gzip -d manual.ps
# lpr manual.ps

Nous pouvons maintenant poursuivre la mise en place des interfaces, mais il est judicieux de laisser le nouveau serveur SQL tourner: cela ne fera que faciliter les tests des biblioth�ques d'interface.

3.8 Les diff�rentes Interfaces : DBI/mSQL, MsqlPerl, et Lite

Une phrase fr�quemment cit�e dans le Camel Book (la documentation de r�f�rence de perl) affirme qu'il y a toujours plusieurs mani�res d'obtenir un r�sultat avec perl. H�las, cela est vrai aussi avec notre application. Il y a trois m�thodes pour acc�der � une base de donn�es msql par l'interm�diaire de CGI. Tout d'abord, la question est de savoir s'il faut ou non utiliser perl. Dans le premier cas (suppos� dans ce document), il y a encore le choix entre deux types compl�tement diff�rents d'interface. Si nous n'employons pas perl, il reste la solution d'employer le langage de script propre � msql, appel� Lite, qui est relativement proche du langage C, en plus simple.

DBI et DBD-mSQL

Au moment de la r�daction de ce document, c'est l'utilisation de l'interface g�n�rique de base de donn�es appel�e DBI qui est pr�f�r�e. DBI a quelques avantages. Elle fournit un contr�le d'acc�s standard � de nombreuses base de donn�es commerciales, et ce avec le m�me ensemble de commandes. La base de donn�es en fonctionnement sur un syst�me donn� est alors interrog�e par une interface qui masque efficacement les caract�ristiques sp�cifiques de cette base au programmeur. Ainsi, DBI fournit une passerelle pratique pour travailler avec diff�rentes bases de diff�rents auteurs. Avec un seul script, il est possible de communiquer avec plusieurs bases de donn�es diff�rentes. Le lecteur interess� peut consulter la DBI-FAQ pour plus de d�tails. Il y a cependant un inconv�nient : l'interface DBI est en cours de d�veloppement et aligne les versions � une allure galopante (quelques fois avec plusieurs mises � jour par mois). De m�me, les pilotes de bases de donn�es sont fr�quemment mis � jour, et peuvent �tre bas�s sur des versions sp�cifiques de l'interface de base de donn�es. Les utilisateurs faisant une premi�re installation doivent se limiter aux num�ros de version donn�s dans ce document, car d'autres versions peuvent poser des probl�mes de compilation et de test, dont la r�solution n'est pas une affaire de n�ophyte.

MsqlPerl

MsqlPerl est une biblioth�que permettant l'acc�s direct � msql � partir de programmes �crits en perl. Elle n'utilise pas l'interface DBI et est tr�s compacte. Bien qu'elle fonctionne tr�s bien avec les deux versions de msql, son usage n'est pas conseill� par rapport � l'interface DBI, qui tend � se g�n�raliser. N�anmoins, suivant le syst�me, c'est une alternative int�ressante, car la biblioth�que est petite et facile � installer. Notamment, il y a moins de d�pendance par rapport aux num�ros de version que celles constat�es entre DBI et les pilotes de base de donn�es.

Le langage de commande propre de msql : Lite

Enfin, msql-2 fournit son propre langage de commande : Lite. Ce langage est proche du C, assaini et compl�t� avec quelques fonctionnalit�s du type 'shell' (d'une certaine mani�re, c'est une version sp�cialis�e de perl). Lite est un langage simple et bien document� dans le manuel msql-2. Le paquetage msql-2 livre aussi en exemple un application utilisant Lite.

Nous ne d�crirons pas ici Lite, car il est trop sp�cifique de msql-2 (et d�j� document� !), et parce que le lecteur est cens� avoir un certain int�r�t pour perl, et en avoir de bonnes notions. N�anmoins, il est recommand� d'y jeter un coup d'oeil : il peut s'av�rer la solution id�ale dans un environnement ne mettant en oeuvre que msql-2 (en supposant donc qu'aucune autre base n'est utilis�e), gr�ce � sa simplicit�.

3.9 La solution standard : DBI et DBD-msql

Nous supposons que perl a �t� install� pendant la configuration du syst�me, ou en utilisant le gestionnaire de paquetage mentionn� plus haut. Aucun d�tail suppl�mentaire ne sera donn� ici. N�anmoins, nous allons d'abord tester si notre version de perl est r�cente :

# perl -v

perl doit r�pondre avec le message suivant :

This is perl, version 5.003 with EMBED
 Locally applied patches:
 SUIDBUF - Buffer overflow fixes for suidperl security
 built under linux at Apr 22 1997 10:04:46
 + two suidperl security patches
Copyright 1987-1996, Larry Wall
[...]

Jusque l�, tout va bien. L'�tape suivante consiste � installer les biblioth�ques g�n�rales perl pour les bases de donn�es (DBI), le pilote msql (DBD-mSQL) et CGI. Le pilote CGI est n�cessaire dans tous les cas. Les archives suivantes sont utilis�es :

  1. DBI-0.8.1.tar.gz
  2. DBD-mSQL-0.65.tar.gz
  3. CGI.pm-2.31.tar.gz (ou plus r�cent>

Une pr�cision est n�cessaire ici pour les d�butants : le test d�crit ici fonctionne tr�s bien � condition d'utiliser exactement les versions recommand�es de logiciels ; des combinaisons d'autres versions peuvent �chouer � un moment ou � un autre. Le d�boguage de combinaisons de versions incompatibles est une affaire de sp�cialistes des interfaces d'appel. Quelquefois, seule une m�thode change de nom alors qu'elle fait la m�me chose, mais d'autres fois, les structures internes changent de mani�re significative. Donc, encore une fois, tenez-vous en aux num�ros indiqu�s de versions si vous ne voulez pas de probl�me, et ce m�me si vous constatez que les versions ont encore chang� dans l'intervalle. Il est normal de voir les versions �voluer rapidement, et vous devez vous attendre � des probl�mes en installant d'autres versions que celles conseill�es ici.

Il est tr�s important que le pilote de base pour mSQL (DBD-mSQL) soit install� apr�s l'interface g�n�rique DBI.

Nous commen�ons par cr�er le r�pertoire /usr/local/PerlModules car il est important de conserver l'arborescence initiale de perl intacte. Nous pourrions aussi choisir un autre nom de r�pertoire ; cela n'a strictement aucune importance, malheureusement aucune recommandation n'est faite dans les fichiers README des diff�rents modules perl. Une fois recopi�es les archives pr�c�demment cit�es dans /usr/local/PerlModules, nous les d�compactons en tapant

# tar zxvf [archive-file]

pour chacune des trois archives. N'oubliez pas d'indiquer le vrai nom de l'archive � la commande tar. Le processus d'installation de ces trois archives est tr�s standard ; seuls les messages de sortie concernant les �tapes les plus importantes sont reproduits ici.

Installation de l'interface perl de base de donn�es DBI

L'interface de la base de donn�es doit avoir �t� install�e avant le pilote sp�cifique � la base. Le d�compactage de l'archive DBI cr�e le r�pertoire /usr/local/PerlModules/DBI-0.81/. Placez-vous dans ce r�pertoire. Il y a un fichier README (que vous devriez lire) et un makefile sp�cifique pour perl. Maintenant, tapez la commande

# perl Makefile.PL

Le syst�me doit r�pondre avec un long message dont la partie la plus importante figure ci-dessous :

[...]
MakeMake (v5.34)
Checking if your kit is complete ...
Looks good
 NAME => q[DBI]
 PREREQ_PM => { }
 VERSION_FROM => q[DBI.pm]
 clean => { FILES=>q[$(DISTVNAME) /] }
 dist => { DIST_DEFAULT=>q[clean distneck disttest [...]
Using PERL=/usr/bin/perl
WARNING! By default new modules are installed into your 'site_lib' directories. Since site_lib directories
come after the normal library directories you MUST delete old DBI files and directories from your 'privlib'
and 'archlib' directories and their subdirectories.
Writing Makefile for DBI

Comme le programme l'indique, tout va bien, et nous pouvons poursuivre avec l'�tape suivante :

# make

Si aucun message d'erreur n'appara�t (les traces d�taill�es affich�es sur l'�cran ne sont pas un message d'erreur), nous pouvons tester la librairie nouvellement install�e avec la commande

# make test

Sur l'affichage, guettez les lignes suivantes (vous pouvez toujours revenir en arri�re avec la touche [Shift]-[PgUp]) :

[...]
t/basics............ok
t/dbidrv............ok
t/examp.............ok
All tests successful.
[...]
DBI test application $Revision: 1.1.1.1 $
Switch: DBI-0.81 Switch by Tim Bunce, 0.81
Available Drivers: ExampleP, NullP, Sponge
ExampleP: testing 2 sets of 5 connections:
Connecting... 1 2 3 4 5
Disconnecting...
Connecting... 1 2 3 4 5
Disconnecting...
Made 10 connections in 0 seconds ( 0.00 usr  0.00 sys = 0.00 cpu)
test.pl done

La derni�re �tape est l'installation de tous les fichiers dans leurs r�pertoires respectifs. La commande suivante s'en occupe :

# make install

Il n'y a plus rien � faire. Si pour quelque raison que se soit, l'installation �choue et que vous vouliez la recommencer, n'oubliez pas de taper d'abord la commande

# make realclean

Cela supprimera toutes les traces laiss�es par la pr�c�dente installation. Vous pouvez aussi supprimer les fichiers install�s en copiant le contenu de l'�cran (montr� ici abr�g�)

Installing /usr/lib/perl5/site_perl/i386-linux/./auto/DBI/DBIXS.h
Installing /usr/lib/perl5/site_perl/i386-linux/./auto/DBI/DBI.so
Installing /usr/lib/perl5/site_perl/i386-linux/./auto/DBI/DBI.bs
[...]
Writing /usr/lib/perl5/site_perl/i386-linux/auto/DBI/.packlist
Appending installation info to /usr/lib/perl5/i386-linux/5.003/perllocal.po

dans un fichier, en rempla�ant Installing par rm. Si vous avez appell� ce fichier uninstall vous pouvez alors taper

# . uninstall

ce qui effacera les derniers fichiers install�s.

Le pilote msql de perl : DBD-mSQL

Le pilote msql pourra �tre install� seulement apr�sl'installation r�ussie de l'interface perl g�n�rique de base de donn�es.

Les �tapes de l'installation sont pratiquement les m�mes que les pr�c�dentes, donc commencez par taper

# perl Makefile.PL

L�, le syst�me doit r�pondre avec un avertissement vous demandant de lire la documentation accompagnant le logiciel. Ensuite, il va d�tecter o� se trouve msql, et vous demande quelle version vous utilisez :

$MSQL_HOME not defined. Searching for mSQL...
Using mSQL in /usr/local/Hughes
-> Which version of mSQL are you using [1/2]?

Entrez la version correcte. Quelques lignes de texte suivent. Guettez les suivantes :

Splendid! Your mSQL daemon is running. We can auto-detect your configuration.
I've auto-detected your configuration to be running on port: 1114

Vous pouvez maintenant tester le pilote en tapant

# make test

Encore une fois, plusieurs lignes sont affich�es. Si elles se terminent par

Testing: $cursor->func( '_ListSelectedFields' )/ This will fail.
 ok: not a SELECT in msqlListSelectedFields!
Re-testing: $dbh->do( 'DROP TABLE testaa' )
 ok
*** Testing of DBD::mSQL complete! You appear to be normal! ***

tout va bien, et vous pouvez lancer l'installation du pilote en tapant

# make install

Vous �tes pr�t � continuer et pouvez sauter le paragraphe suivant.

3.10 L'interface MsqlPerl

Si vous d�cidez d'utiliser l'interface globale MsqlPerl, aucun pilote particulier n'est n�cessaire ; seule l'archive MsqlPerl-1.15.tar.gz est utilis�e, puisque, comme cela a d�j� �t� dit, MsqlPerl fournit une interface directe entre perl et le serveur de base de donn�es, sans utiliser l'interface DBI. L'installation et le test sont tr�s faciles.

Apr�s avoir tap� perl Makefile.PL, l'utilitaire make peut �tre activ�. Vous devez d'abord indiquer o� se trouve mSQL. S'il est dans /usr/local/Minerva/, la r�ponse par d�faut peut �tre valid�e.

Ensuite, tapez make test. Avant cela, vous devez vous assurer qu'il y a bien une base nomm�e test et que vous avez les droits d'�criture et lecture dessus. Cela peut �tre fait avec

# msqladmin create test

3.11 Biblioth�que CGI de perl

L'installation de l'interface CGI de perl est la plus simple des trois �tapes. Lancez les commandes dans l'ordre donn�, et voil� :

# perl Makefile.PL
# make
# make install

Contrairement aux autres pilotes, cette interface n'a pas d'option de test (# make test), alors que les autres modules doivent �tre test�s dans tous les cas.

Un sous-r�pertoire avec les exemples CGI est cr��. Vous pouvez en copier le contenu vers /home/httpd/cgi-bin/ et utiliser un navigateur pour jouer avec les scripts.

3.12 Check-list de l'installation

Nous avons effectu� les �tapes suivantes, dans cet ordre:

  1. Installation de Linux avec support r�seau
  2. Installation d'un serveur http, par exemple Apache
  3. Installation d'un navigateur, par exemple Arena, Lynx ou Netscape
  4. Installation d'un serveur SQL, par exemple msql
  5. Installation d'une interface perl SQL convenable
  6. Installation des fichiers CGI

A la fin, vous devez faire un peu de m�nage. Toutes les arborescences des sources msql et les modules perl peuvent �tre d�truites sans inconv�nient (cependant, vous ne devriez pas d�truire les fichiers archives !) puisque les binaires et la documentation sont maintenant dans des r�pertoires diff�rents.


Page suivantePage pr�c�denteTable des mati�res

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:16