Annexe 3 Extrait Guide de Maintenance et
Utilisation (hors description et arborescence de l'application)
Extrait Guide de Maintenance et Utilisation -
SOMMAIRE -
1. Description du produit
2. Installation 43
Etape 1 : Installation d'Apache, PHP, Mapserver et librairies
(GDAL/OGR, PROJ4). 43
Etape 2 : Mise à jour des variables d'environnement
Windows. 43
Etape 3 : Copie des fichiers de l'application. 43
Etape 4 : Initialisation de PostgreSQL/PostGIS et
création des bases de données 43
Etape 5 : Importation des données (création des
tables). 45
Etape 6 : Tâches planifiées. 47
3. Manipulations courantes 47
Manipulation 1 : Mettre à jour une couche. 47
Manipulation 2 : Importer une nouvelle couche. 48
Manipulation 3 : Changer les paramètres d'affichage
d'une couche. 50
Manipulation 4 : Définir un nouveau login/mot de passe
pour l'entrée limitée. 50
Manipulation 5 : Créer une nouvelle base de
données avec champ géométrique. 50
Manipulation 6 : Créer une nouvelle base de
données simple 51
Manipulation 7 : Créer une nouvelle table simple. 51
4. Annexes
Annexe 1 : Table de correspondance des couches.
Annexe 2 : Arborescence de l'application.
a. Arborescence du répertoire
c:\ms4w
b. Arborescence du répertoire
c:\PostgreSQLWin32
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron

2. Installation
L'application est livrée avec 2 CDROM contenant :
· Disque 1 : Distribution originale (sources et bins).
· Disque 2 : Application, shapes, images produites pour
l'application et manuel.
4 Etape 1 : Installation d'Apache, PHP, Mapserver et
librairies (GDAL/OGR, PORJ4).
1. Copier les répertoires `ms4w' et `PostgreSQLWin21'
(Disque 1) à la racine du disque dur.
2. Ouvrir le répertoire `ms4w' et : - double-cliquer sur
le fichier `apache-install.bat'
- '' '' `sete nv. bat'
4 Etape 2 : Mise à jour des variables
d'environnement Windows.
1. Ouvrir la fenêtre de mise à jour des variables
d'environnement de Windows (clic droit sur Poste de Travail >
Propriétés > onglet Avancé > Variables
d'environnement).
2. Copier la 1re ligne du fichier
`variables_environnement.txt' (Disque 1) dans le PATH (sélectionner la
ligne `PATH' dans la partie `variables système' de la fenêtre et
cliquer sur modifier puis coller la ligne en vérifiant bien qu'un ` ;'
sépare chaque chemin renseigné).
3. Créer 4 nouvelles variables (PGHOME
c:\PostgreSQLWin32, PGDATA
c:\PostgreSQLWin32\data, PGHOST
localhost, PGPORT 5432) comme indiqué dans le fichier
`variables_evironnement.txt' (Disque 1). Pour cela cliquer sur nouveau dans la
partie `variables système' de la fenêtre et renseigner les 2
champs pour chaque nouvelle variable.
4. Redémarrer la machine. 4 Etape 3 : Copie des
fichiers de l'application.
1. Copier le contenu du dossier `ms4w' du disque 2
(application/ms4w) dans le répertoire `ms4w' et ses
sous-répertoires de la machine.
2. Copier le contenu du dossier `PostgreSQLWin32' du disque 2
(application/PostgreSQLWin32) dans le répertoire `PostgreSQLWin32 et ses
sous-répertoires de la machine.
3. Copier le dossier shp du disque 2 (shp_&_images/shp) dans
le répertoire data de PostgreSQL (PostgreSQLWi n32/data).
4. Redémarrer Apache en exécutant le script
`apache-restart.bat' dans ms4w. 4 Etape 4 : Initialisation de
PostgreSQL/PostGIS et création des bases de données.
1. Créer un compte utilisateur simple
Windows (non administrateur) nommé `[ utilisateur] ' et avec pour mot de
passe `[passe]' (Démarrer > Panneau de configuration > Comptes
d'utilisateurs).
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
2. Ouvrir une session comme administrateur PostgreSQL. Dans
Démarrer > Exécuter :
runas /user:[ utilisateur] cmd
L'invite de commandes s'ouvre et vous demande d'entrer le mot de
passe utilisateur. Entrer :
[passe]
3. Initialiser PostgreSQL. Taper :
cd
c:\windows\system32 Initdb -A
trust
4. Fermer l'invite de comma ndes.
5. Ouvrir l'invite de comma nde en tant qu'administrateur
Windows. Démarrer > Tous les programmes > Accessoires > Invite
de commandes
6. Installer PostgreSQL en tant que service Windows. Taper :
cd c :\ Documents and Settings\[
ici_nom_compte_administrateur_windows] pg_ctl register -u [utilisateur] -p
[passe]
7. Démarrer le service PostgreSQL. Taper :
net start postgresql
Note : si Windows refuse de démarrer le service
postgresql, le faire manuellement. Pour cela Démarrer > Panneau de
configuration > Outils d'administration > Services.
Chercher dans la liste le service `PostgreSQL'. Faire un clic
droit dessus et ouvrir les propriétés. Dans l'onglet
`général `, choisir le type de démarrage automatique. Dans
l'onglet `connexion' choisir `Ouvrir un session en tant que ce compte'
(.\postgresql). Renseigner les 2 champs mot de passe (entrer `[passe]').
Retourner dans l'onglet `général' et cliquer sur démarrer
puis appliquer. Fermer toutes les fenêtres.
8. Redémarrer la machine et vérifier que le
service postgresql (postgres.exe) a bien été
démarré par Windows. Si le problème persiste vous pouvez
utiliser le script `start_postgresql.bat' (Disque 2) en tâche
planifiée au démarrage pour lancer automatiquement le service.
Dans l'invite de commandes, les commandes pg_ctl start et pg_ctl
stop permettent de démarrer ou arrêter manuellement le service
postgresql.
9. Créer la base de données `[ nom _bdd1] ' (sans
accent) pour les couches. Ouvrir l'invite de commande en tant qu'administrateur
PostgreSQL : Dans Démarrer > Exécuter :
runas /user:[ utilisateur] cmd
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
L'invite de commandes s'ouvre et vous demande d'entrer le mot de
passe utilisateur. Entrer :
[passe]
10. Taper :
cd
c:\postgresqlwin32 createdb
[nom_bdd1] createlang plpgsql [nom_bdd1]
11. Charger l'extension PostGIS et les projections dans
PostgreSQL pour la base de données `[nom_bdd1] '. Taper :
psql -d [ nom_bdd1] -f
c:\PostgreSQLWin32\share\postgresql\postgis.sql psql
-d [ nom_bdd1] -f
c:\PostgreSQLWin32\share\postgresql\spatial
_ref _sys.sql
12. Créer la base de données `[
nom_bdd2] ' pour les logins et les mots de passe. Taper :
cd
c:\postgresqlwin32 createdb
[nom_bdd2] createlang plpgsql [nom_bdd2]
-3 Etape 5 : Importation des données
(création des tables).
Les couches à intégrer à la base de
données sont contenues dans le répertoire
PostgreSQLWin32/data/xxxx. Les copies de sauvegarde sont dans le dossier
shp_&_images/xxxx du disque 2.
1. Ouvrir l'invite de commande en tant qu'administrateur
PostgreSQL : Dans Démarrer > Exécuter :
runas /user:[ utilisateur] cmd
L'invite de commandes s'ouvre et vous demande d'entrer le mot de
passe utilisateur. Entrer :
[passe]
2. Importer couche par couche les données dans la base de
données `donnees'. Taper :
cd c :\postgresqlwin32\ data\ xxxx shp2pgsql -s 27593 -c
[nom_de_la_table_d'origine.shp] [nouveau_nom_de_la_table] | psql
[nom_bdd1]
Note : le nouveau nom de la table doit correspondre à
celui renseigné dans le mapfile (
c:/ms4w/apps/chameleo n/map) et le
fichier de légende xml
c:/ms4w/apps/chameleon/htdocs).
Si une table doit être remplacée ou mise à jour, veiller
à entrer le même nom que la table postgresql d'origine (voir 3.
Manipulations courantes). Voir tableau des correspondances des couches en
annexe (Annexe 1 : Table de correspondance des couches).
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
3. Redémarrer Apache (exécuter le script
`apache-restart.bat' dans ms4w) et la machine.
4. Création de la table `[ nom_t able] ' dans la base de
données `[ nom_bdd2]'.
Accéder à l'interface d'administration de la base
de données (PhpPgAdmin) en entrant l'url
http://xxxx/phpPgAdmin/index.php
dans la barre d'adresse du navigateur.
Entrer le login [ utilisateur] et le mot de passe [passe] pour
vous logger.
Cliquer sur la base de données `[ nom _bdd2]' et sur `SQL'
en haut à droite de l'écran pour ouvrir une invite de commande
SQL.
Taper dans la fenêtre :
CREATE TABLE [nom _table] ("Pseudo" character varying(20)
DEFAULT ' '::character varying NOT NULL,"Passe" character varying(20) DEFAULT '
'::character varying);
Ou copier directement cette commande SQL à partir du
fichier `SCRIPT_create_table_authentification.sql' contenu sur le disque 2
(application\commandes SQL).
5. Importer un couple login/mot de passe dans la
table `[ nom _table]' de la base de données
`[nom_bdd2]'.
Retourner dans l'invite de commande SQL et taper dans la
fenêtre :
INSERT INTO [nom _table] VALUES ('[ login] ','[mdp] ');
[login] et [mdp] doivent être remplacés
respectivement par le login choisi et par le mot de passe correspondant.
Attention à conserver les guillements.
Ou copier directement cette commande SQL à partir du
fichier `SCRIPT_insert_login_et_mdp.sql' contenu sur le disque 2
(application\commandes SQL).
Cette opération doit être
répétée pour chaque nouveau couple login/mot de passe
souhaité.
6. Fermer l'invite de comma nde SQL.
Vérifier l'existence de la table `[nom_t able]' dans la
fenêtre de gauche de l'interface (arborescence déroulante).
Vérifier la présence dans la table `[ nom_t able]
' du/des couple(s) login/mot de passe importés en cliquant sur la table
`[ nom _table] ' et sur parcourir.
7. Se déconnecter de PhpPgAdmin (lien de
déconnexion en haut à droite de l'écran) et fermer la
fenêtre.
A ce stade, il n'est pas nécessaire d'effectuer
d'autres manipulations dans PostgreSQL pour exploiter le serveur
cartographique. Cependant, une documentation complète du SGBD est dispo
ni ble à l' adresse
http://docs.postgresqlfr.org/pgsql-8.1.2-fr/index.html.
La liste des commandes SQL est également disponible
à l'adresse
http://docs.postgresqlfr.org/pgsql-8.1.2-fr/sql-commands.html.
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
-3 Etape 6 : Tâches planifiées.
Il est souhaitable de vider régulièrement le
répertoire tmp (ms4w/tmp) en exécutant les scripts `delms_tmp.
bat' (au 1er niveau de l'arborescence) et `del-buttons.bat' (dans
tmp/ms_tmp).
Pour automatiser cette tâche créer une tâche
planifiée par Windows.
Démarrer > Tous les programmes > Accessoires >
Outils système > Tâches planifiées.
Effacer manuellement les fichiers et dossiers dont le nom est du
type `sess_xxxxx' (au 1er niveau de l'arborescence) et vider
régulièrement le log `ms_error.txt'.
Attention cependant à ne pas supprimer les
sous-répertoires (auquel cas les recréer ou les
récupérer à partir de la sauvegarde contenue dans le
disque 2).
|
3. Manipulations courantes
|
Manipulation 1 : Mettre à jour une
couche.
1. Exporter en shape (.shp) la table mise à jour via le
traducteur universel de MapInfo (Outils > Traducteur universel) dans le
répertoire
c:\PostgreSQLWin32\share\postgresql\xxxx.
2. Dans PhpPgAdmin, supprimer la table à mettre
à jour (cliquer sur la base de données `[nom_bdd1]' et dans la
fenêtre de droite listant les tables contenues dans la base, cliquer sur
supprimer dans la ligne correspondant à la table à mettre
à jour).
Note : Il est nécessaire de préalablement
effectuer cette suppression puisque PostgreSQL ne peut pas écraser une
couche existante et la couche mise à jour doit avoir le même nom
que l'ancienne afin d'éviter de la renommer dans le mapfile et le
fichier xml de légende.
3. Importer la couche mise à jour dans la
base de données `[nom_bdd1]'. Pour cela, ouvrir l'invite de commande en
tant qu'administrateur PostgreSQL : Dans Démarrer > Exécuter
:
runas /user:[ utilisateur] cmd
L'invite de commandes s'ouvre et vous demande d'entrer le mot de
passe utilisateur. Entrer :
[passe]
Importer couche par couche les données dans la base de
données `[ nom_bdd1] '. Taper :
cd c :\postgresqlwin32\ data\ xxxx
shp2pgsql -s 27593 -c [nom_de_la_table_mise_a_jour.shp]
[nom_de_la_table] | psql
[nom_bdd1]
Note : le nom de la table doit être le même que celui
de l'ancienne table supprimée. Voir tableau des correspondances des
couches en annexe (Annexe 1).
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
Manipulation 2 : Importer une nouvelle
couche.
1. Exporter en shape (.shp) la nouvelle table via le traducteur
universel de MapInfo (Outils > Traducteur universel) dans le
répertoire
c:\PostgreSQLWin32\share\postgresql\xxxx.
2. Importer la nouvelle couche dans la base de données `[
nom_bdd1]'. Pour cela, ouvrir l'invite de commande en tant qu'administrateur
PostgreSQL :
Dans Démarrer > Exécuter :
runas /user:[ utilisateur] cmd
L'invite de commandes s'ouvre et vous demande d'entrer le mot de
passe utilisateur. Entrer :
[passe]
Importer la nouvelle couche dans la base de données `[
nom_bdd1] '. Taper :
cd c :\postgresqlwin32\ data\ xxxx shp2pgsql -s 27593 -c
[nom_de_la_nouvelle_table.shp] [nom_de_la_nouvelle_table] | psql
[nom_bdd1]
3. Mettre à jour le mapfile (
c:\ms4w\apps\chameleon\map).
Editer le/les mapfile(s) (mapfilepublic.map et mapfilelimite.map)
avec le bloc note.
Dans la section ` #paramètres des couches#' :
Copier un bloc `layer' (commençant par LAYER et finissant
par END#LAYER) existant du même type que celui de la nouvelle couche
(polygon, line, point) défini à la ligne :
TYPE POLYGON (ou LINE ou POINT)
Coller le nouveau bloc layer dans le groupe et suivant la
position relative voulue (Mapserver dessine les couches dans l'ordre
défini dans le mapfile).
Paramétrer le nouveau layer :
Mettre à jour avec le nom entré dans la base de
données, les lignes :
NAME "xxxx"
Et :
DATA "the _geom from xxxx"
Où `xxxx' est le nom de la nouvelle couche entré
dans la base de données `donnees'. Paramétrer la couleur
d'affichage de la couche en modifiant les lignes suivantes
surlignées:
CLASS STYLE
COLOR 0 51 255
OUTLINECOLOR 255 255 255
|
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
Personnaliser les paramètres d'étiquettage en
modifiant ou ajoutant les lignes suivantes:
LABELITEM "champx"
Où `champx' correspond au nom de champ servant à
l'étiquetage. Et :
LABEL
SIZE MEDIUM #taille de l'étiquette
MINFEATURESIZE AUTO #taille minimale d' affich. POSITION CC
#position par rapport à l' objet COLOR 162 163 163 #couleur de la police
BACKGROUNDCOLOR 207 255 255 #couleur de fond END
|
Sélectionner les champs interrogeables par clic en les
listant dans la ligne :
HEADER "champ1^ | champ3^ | champ7^ |"
Où `champ 1' etc correspondent aux noms des champs
attributaires que l'on veut rendre interrogeables par clic à partir de
l'outil de navigation `informations' de l'interface web.
Sélectionner les champs interrogeables par requête
attributaire en les listant dans la ligne du bloc
METADATA :
SPATIALSEARCH "champ1, champ7,champ10 "
Où `champ 1' etc correspondent aux noms des champs
attributaires que l'on veut rendre interrogeables à partir du module de
req uête attributaire de l'interface web.
Note : L'ensemble des paramètres du mapfile sont
détaillés à l'adresse
http://fa.vdb.free.fr/MapServer/doc/mapfile-reference_fr.html
.
4. Mettre à jour le fichier de légende xml (
c:\ms4w\apps\chameleon\htdocs).
Editer le/les fichiers(s) de légende xml (legendepublic.xml et
legendelimite.xml) avec le bloc note.
Copier un groupe (contenu dans les balises <group> et
</group>) existant et le coller dans le `thème' xml (groupe de
layer dans le mapfile) où la couche doit être affichée.
<group name="nom" ABSTRACT="TBA" visible="true" icon="images/
.gif"> <layer name="xxxx"/>
</group>
|
|
`xxxx
' correspond au nom de la table entrée dans la base de
données et à la ligne `NAME' du mapfile et `nom' correspond au
nom de la couche souhaité pour l'affichage dans la légende de
l'interface web.
5. Vider le répertoire tmp (
c:\ms4w\tmp) en exécutant les script
`del-ms_tmp.bat' et `delbuttons.bat' et en supprimant manuellement les fichiers
et répertoires du type sess_xxxx contenus dans
c:\ms4w\tmp.
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
6. Redémarrer Apache en exécutant
le script `apache-restart.bat' dans
c:\ms4w. Manipulation 3 : Changer les
paramètres d'affichage d'une couche.
Voir point 3. de la manipulation 2 `Importer une
nouvelle couche' et listing des paramètres du mapfile à l'adresse
http://fa.vdb.free.fr/MapServer/doc/mapfile-reference_fr.html
.
Manipulation 4 : Définir un nouveau login/mot de
passe pour l'entrée limitée.
Accéder à l'interface d'administration de la
base de données (PhpPgAdmin) en entrant l'url
http://localhost/phpPgAdmi n/i
ndex.php dans la barre d'adresse du navigateur ou en cliquant sur le lien
`Administrer' de la section protégée du serveur
cartographique.
Entrer le login [ utilisateur] et le mot de passe [passe] pour
vous logger.
Cliquer sur la base de données `[ nom _bdd2]' et sur `SQL'
en haut à droite de l'écran pour ouvrir une invite de commande
SQL.
Importer un couple login/mot de passe dans la table `[ nom
_table] ' de la base de données `[ nom _bdd2] ' en entrant la ligne
suivante :
INSERT INTO [nom _table] VALUES ('[ login] ','[mdp] ');
Où [login] et [mdp] sont respectivement le login choisi et
le mot de passe correspondant. Attention à conserver les guillemets.
Ou copier directement cette commande SQL à partir du
fichier `SCRIPT_insert_login_et_mdp.sql' contenu sur le disque 2
(application\commandes SQL).
Cette opération doit être
répétée pour chaque nouveau couple login/mot de passe
souhaité. Manipulation 5 : Créer une nouvelle base de
données avec champ géométrique.
Créer la base de données `xxxx' (sans accent)
devant contenir des objet géographiques (nécessité de
charger l'extension PostGIS et les projections).
Ouvrir l'invite de commande en tant qu'administrateur PostgreSQL
:
Dans Démarrer > Exécuter :
runas /user:[ utilisateur] cmd
L'invite de commandes s'ouvre et vous demande d'entrer le mot de
passe utilisateur. Entrer :
[passe]
Taper :
cd
c:\postgresqlwin32 createdb
xxxx createlang plpgsql xxxx
Charger l'extension PostGIS et les projections dans PostgreSQL
pour la base de données `xxxx'.
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
Taper :
psql -d xxxx -f
c:\PostgreSQLWin32\share\postgresql\postgis.sql psql
-d xxxx -f
c:\PostgreSQLWin32\
share\postgresql\ spatial _ref _sys . sql
Manipulation 6 : Créer une nouvelle base de
données simple.
Créer la base de données `yyyy' ne devant pas
contenir d'objet géographiques. Ouvrir l'invite de commande en tant
qu'administrateur PostgreSQL : Dans Démarrer > Exécuter :
runas /user:[ utilisateur] cmd
L'invite de commandes s'ouvre et vous demande d'entrer le mot de
passe utilisateur. Entrer :
[passe]
Taper :
cd
c:\postgresqlwin32 createdb
yyyy createlang plpgsql yyyy
Manipulation 7 : Créer une nouvelle table
simple.
Création de la table `nouvelle_table' composée des
champs `Nom' et `Prénom', dans la base de données `yyyy'.
Accéder à l'interface d'administration de la
base de données (PhpPgAdmin) en entrant l'url
http://xxxx/phpPgAdmin/index.php
dans la barre d'adresse du navigateur ou en cliquant sur le lien `Administrer'
de la section protégée du serveur cartographique.
Entrer le login [ utilisateur] et le mot de passe [passe] pour
vous logger.
Cliquer sur la base de données `yyyy' et sur `SQL' en haut
à droite de l'écran pour ouvrir une invite de commande SQL.
Taper dans la fenêtre :
CREATE TABLE nouvelle _table ("Nom" character varying(20)
DEFAULT ' '::character varying NOT NULL,"Prenom2" character varying(20) DEFAULT
' '::character varying);
Où `Nom' et `Prenom' sont ici de type character flottant
limité à 20 caractères.
Importer un couple Nom/Prénom dans la table
`nouvelle_table' de la base de données `yyyy'. Dans l'invite de commande
SQL de PhpPgAdmin taper :
INSERT INTO nouvelle _table VALUES('[nom] ','[prenom] ');
Où [nom] et [Prenom] doivent être remplacés
par le couple Nom/Prénom à entrer dans la table. Attention
à conserver les guillemets.
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
Note : Une documentation complète du SGBD PostgreSQL est
disponible à l'adresse
http://docs.postgresqlfr.org/pgsql-8.1.2-fr/index.html.
La liste des commandes SQL est également disponible
à l'adresse
http://docs.postgresqlfr.org/pgsql-8.1.2-fr/sql-commands.html.
* * *
Université d'Avignon et des Pays de Vaucluse -
2006-2007 Master 2 Professionnel Géomatique et Conduite de Projets de
Développement - Julien Berron
|