Cette page est en cours de rédaction.
Postgis
Ce qu'est postgis
Postgis est une extension de postgresql qui permet la gestion d'objets géographiques. Concrètement la cartouche spatiale postgis ajoute au serveur :
- la possibilité de définir le type de champ geometry
- l'ensemble des fonctions permettant les traitements géographiques
- la base de référence des projections géographiques spatial_ref_sys
- la base de gestion des attributs géographiques des tables geometry_columns
Installation
Installer le paquet correspondant à votre version de postgres, exemples:
- postgresql-14-postgis-3 sous jammy
- postgresql-13-postgis-3 sous focal
- postgresql-10-postgis-2.4 sous bionic
Les paquets supplémentaires suivants seront installés : libgeos-3.2.2 libgeos-c1 libproj0 postgis proj-data
Les scripts nécessaires à la couche géographique de postgresql sont installé dans le dossier
/usr/share/postgresql/9.1/contrib/postgis-1.5/ ou
/usr/share/postgresql/10/contrib/postgis-2.4/
Donner à une base la capacité géographique
Support de cours d'une formation SIG (partie sur PostGis)
Si le serveur dispose bien du module PostGis, il suffit d'exécuter sur la base :
CREATE EXTENSION "postgis";
les infos ci-dessous sont sans doute obsolète (indisponible avec postgresql 13).
Tout d'abord, créer la base de données en question
createdb -U <nom_utilisateur> <nom_base_geo>
Puis on utilser le rôle postgres (super user postgresql)
$ sudo -i -u postgres
pour exécuter dans cet ordre les scripts suivants :
psql -f /usr/share/postgresql/9.1/contrib/postgis-1.5/postgis.sql <nom_base_geo> psql -f /usr/share/postgresql/9.1/contrib/postgis-1.5/spatial_ref_sys.sql <nom_base_geo>
puis on quitte le shell postgres
exit
createdb -U <nom_utilisateur> -T template_postgis <nom_base_geo>
Pour faire des imports et des exports (car la fonction sur phppgadmin est bancale) :
$ sudo -i -u postgres
export :
pg_dump <nom_de_la_base> > nom_de_la_base.pgdump
import:
cat nom_de_la_base.pgdump | psql -d nom_de_la_base
—-
Contributeurs : Yannick, Sparky, Elemmire, Aldian, Fred, XAVIER_jean-marie, bcag2.
