PostgreSQL PostGIS
Da MontelLUG WIKI.
HOW TO installare e configurare PostgreSQL e PostGIS con interfaccia PgAdmin3 e estensione shp to pgsql su Xubuntu/Ubuntu 11.10 In particolare questa guida fa riferimento alle versioni: PostgreSQL 9.1 PgAdmin3 1.12.3 PostGIS 1.5.3-1
- Installare PostgrSQL:
-sudo apt-get install postgresql
- Editare /etc/postgresql/9.1/main/pg_hba.conf in modo che ci sia la keyword trust:
# Database administrative login by Unix domain socket local all postgres trust # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all trust # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. #local replication postgres peer #host replication postgres 127.0.0.1/32 md5 #host replication postgres ::1/128 md5
- Restartare PostgreSQL:
-sudo service postgresql restart
- Verificare che PostgreSQL funzioni, loggandosi:
-psql -U postgres
PostgreSQL è in ascolto sulla porta 5432, l'utente è postgres e la password postgres. La password si può cambiare con:
-ALTER USER postgres WITH PASSWORD 'password';
dove al posto di password, potete mettere la password che volete (sempre tra apici).
Da psql si esce con il comando: \q
- Installare PgAdmin3:
-sudo apt-get install pgadmin3
dopo il primo avvio di PgAdmin3 è possibile che vi dica che non è aggiornato...dovrebbe funzionare tutto lo stesso.
- Installare PostGIS:
-sudo apt-get install postgresql-9.1-postgis
- Creare link simbolico a shp2pgsql in /usr/bin. Servirà per importare i file .shp in PostgreSQL
-sudo ln -s /usr/lib/postgresql/9.1/bin/shp2pgsql-gui /usr/bin/shp2pgsql-gui
Modificare (o creare se assente) il file plugins.ini come segue. Se state usando pgadmin3 1.14.0, il file dovrebbe andar messo in /usr/share/pgadmin3/plugins.d/ le versioni inferiori lo mettono in /usr/share/pgadmin3/:
; ; pgShapeLoader (Linux): ; Title=PostGIS Shapefile and DBF loader Command=$$PGBINDIR/shp2pgsql-gui -U $$USERNAME -d $$DATABASE -p $$PORT -h $$HOSTNAME Description=Open a PostGIS ESRI Shapefile or Plain dbf loader console to the current database. KeyFile=$$PGBINDIR/shp2pgsql-gui Platform=unix ServerType=postgresql Database=Yes SetPassword=No
In questo modo avrete l'estensione grafica per integrare i file .shp integrata direttamente in PgAdmin3.
- Comandi per creare un database geografico (direttamente da console):
-createdb -U postgres postgisDB -createlang -U postgres plpgsql postgisDB -psql -U postgres -d postgisDB -f /usr/share/postgresql/9.1/contrib/postgis-1.5/postgis.sql -psql -U postgres -d postgisDB -f /usr/share/postgresql/9.1/contrib/postgis-1.5/spatial_ref_sys.sql
Ora in PgAdmin3, se selezionate il database appena creato (cioè con estensione geografica), potrete importare tranquillamente i file .shp grazie all'estensione PostGiIS Shapefile and DBF loader che trovate nel menù Estensioni (o icona puzzle).
Attenzione: quando tentate di importare un file .shp che ha coordinate cartesiane, in Geometry Column al posto di the_geom, scrivere geometry.