Affichage des articles dont le libellé est PostGIS. Afficher tous les articles
Affichage des articles dont le libellé est PostGIS. Afficher tous les articles

vendredi 12 janvier 2018

Mémo projections / SRID / références spatiales de Google Earth, Google Maps et OpenStreetMap



Google Earth
Geographic coordinate system with the wgs84 datum - EPSG: 4326

Google Maps 
Projected coordinate system that is based on the wgs84 datum - EPSG: 3857

Open Street Map database
A gcs with units decimal degrees & datum of wgs84 - EPSG: 4326

Open Street Map tiles and WMS webservice
Projected coordinate system that is based on the wgs84 datum - EPSG: 3857



Toutes les références spatiales sur http://spatialreference.org/

mercredi 23 septembre 2015

Mémo PostGreSQL-PostGis

PostgreSQL

 

Mémo des principales commandes PostgreSQL

 

 

Créer un utilisateur PostgreSQL

1- Création de l'utilisateur + attribution mdp

CREATE USER mon_utilisateur WITH ENCRYPTED PASSWORD 'UnMotDePasseQuiDéchire';

2- Autoriser l'user à se connecter à une base spécifique (existante)

GRANT CONNECT ON DATABASE LaBase TO mon_utilisateur;

3- Droits génériques : accès au schéma public

REVOKE ALL ON SCHEMA public FROM mon_utilisateur;
GRANT USAGE ON SCHEMA public TO mon_utilisateur;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO mon_utilisateur;
GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO mon_utilisateur;
...

4- Ajuster les droits spécifiques d'un utilisateur

REVOKE ALL ON ALL TABLES IN SCHEMA mon_schéma FROM mon_utilisateur ;
GRANT SELECT ON ALL TABLES IN SCHEMA mon_schéma TO mon_utilisateur ;

En préparation :

Créer une base de données PostGresql
 

lundi 21 septembre 2015

PostGreSQL/PostGIS Broken Package - liblwgeom-2.1.7

Logo PostGIS
Retour d’expérience sur un problème de mise à jour PostGreSQL-9.3/PostGIS-2.1 sur debian.


Si vous êtes confronté à un problème avec la librairie liblwgeom-2.1.7 lors de la mise à jour de PostGreSQL(9.3)PostGIS(2.1) depuis le dépôt officiel, voici une solution rapide et efficace.


Attention, cette méthode impose l’arrêt de votre serveur de base de données.

Lors de la mise à jour de PostGreSQL (9.3) et PostGIS (2.1), c'est à dire des paquets :
liblwgeom-2.1.8 postgis postgis-doc postgresql-9.3-postgis-2.1 postgresql-9.3-postgis-scripts

vous pouvez être confronté à l'erreur suivante :
/var/cache/apt/archives/liblwgeom-2.1.8_2.1.8+dfsg-1.pgdg14.04+1_amd64.deb:
  trying to overwrite '/usr/lib/liblwgeom-2.1.8.so', which is also in
  package liblwgeom-2.1.7 2.1.8+dfsg-1~95.git18216c0.pgdg14.04+1

La librairie liblwgeom-2.1.8 ne peut être installée car la version précédente(2.1.7)ne peut être désinstallée.

Tenter de la désinstaller, n'est pas la meilleur solution à cause des dépendances :
# apt-get remove liblwgeom-2.1.7

Par contre, voici ce qui fonctionne :

# Arrêt du serveur 
service postgresql stop
 
#Suppression du paquet incriminé, sans prendre en compte des dépendances
dpkg -r liblwgeom-2.1.7
 
# Correction et poursuite de l'installation précédente
# Fix Broken Package 
apt-get -f install
 
# Restart du serveur 
service postgresql start

Tout est rentré dans l'ordre !

Origine de la solution : http://askubuntu.com/questions/675347/postgis-broken-package-unmet-dependencies-liblwgeom-2-1-8

mardi 24 avril 2012

Initialiser une base PostgreSQL/PostGIS

 

 

 

 

 

Prérequis

  • Une instance PostGreSQL fonctionnelle
  • Le cartouche PostGIS installé

Préparation de la base

su postgres
createdb mabase
createlang plpgsql mabase
psql -d mabase -f /path/to/postgresql/version/share/contrib/postgis.sql
psql -d mabase -f /path/to/postgresql/version/share/contrib/spatial_ref_sys.sql

Création des tables

psql mabase
CREATE TABLE test (id serial PRIMARY KEY,genre text);

Ajout de la colonne géométrique à la table - AddGeometryColumn()

Pour l'instant notre table est vide, nous allons lui ajouter une troisième colonne où seront stockées nos données géométriques.

Nous aurons recours pour cela à la fonction AddGeometryColumn() de PostGIS dont la synthaxe générale est :

AddGeometryColumn( Table, 
                    Colonne_Geometrique, 
                    SRID, 
                    Type_Geometrie, 
                    Dimension);
où
  • Table est le nom de la table à laquelle doit être ajoutée la colonne géométrique;
  • Colonne_Geometrique est le nom de la colonne géométrique;
  • Type_Geometrie est le le type de géométrie possible:
  • SRID est l'identifiant spatial de projection selon le système de projection choisi.
    A titre d'exemple pour le Lambert II Carto Etendu, srid=27852;
  • Dimension est la dimension des objets géométriques 2D ou 3D ou 4D;
Dans notre cas, nous saisirons :

SELECT AddGeometryColumn( 'test', 'geom', -1, 'GEOMETRY', 2 );
 
 
Avec cette requête, nous avons ajouté la Colonne géométrique geom à la Table 'test'.

Comme nous n'utilisons ici aucun système de projection référencé, nous restons donc dans le plan 2D orthonormal par défaut, nous précisons juste SRID=-1.

Le type de données géométriques (Type_Geometrie) que nous souhaitons enregistrer peut-être de n'importe quel type. Nous préciserons donc par défaut GEOMETRY.
Enfin, nous sommes en 2 Dimensions.

Note
Il aurait été tout à fait possible de créer la table test en faisant directement

CREATE TABLE test (id serial PRIMARY KEY,genre TEXT,geom GEOMETRY);

Mais il y aurait alors eu un perte concernant les méta-données sur les objets géométriques concernant le type, le srid, la dimension.
Il est donc préférable d'avoir recours à la fonction AddGeometryColumn() pour pouvoir tirer profit de ces métadonnées.