Wenn räumliche Daten in einer Datenbank abgelegt werden sollen, ist oft PostgreSQL mit der PostGIS-Erweiterung die erste Wahl.
Um Datenbanken erstellen zu können, die in der Lage sind, Geo-Daten zu verarbeiten, muss man beim Erstellen der Datenbank ein Template angeben, welches die notwendigen Erweiterungen, Datentypen und Funktionen in die neue Datenbank kopiert. Dieses Template heißt normalerweise template_postgis und wird wird in der Regel automatisch erzeugt, wenn die PostGIS-Erweiterung installiert wird.
Bei Debian und Ubuntu - wie heute wieder festgestellt - leider nicht. Es gibt dort zwar ein spezielles Paket ( postgresql-X.Y-postgis ), aber die Installation dieses Pakets erzeugt nicht das gewünschte Template.
Also muss man das zu Fuß erledigen.
Die notwendigen Dateien finden
Glücklicherweise werden 2 SQL-Dateien mitgeliefert, die alles notwendige erledigen - postgis.sql und spatial_ref_sys.sql. Die muss man allerdings erstmal finden.
Also lassen wir sie suchen:
user@desktop:~$ find / -name postgis.sql
In Ubuntu sind sie zum Beispiel in dem Verzeichnis
/usr/share/postgresql/9.1/contrib/postgis-1.5/
versteckt.
Wenn man die gefunden hat, kann man loslegen.
Sollten die Dateien aus irgendeinem Grund nicht gefunden werden, hab ich sie hier zum Download zusammen gestellt. (ca. 220 Kb)
Download
Die Datenbank erstellen:
user@desktop:~$ sudo -u postgres createdb -E UTF8 template_postgis
Dann soll mit
user@desktop:~$ sudo -u postgres createlang -d template_postgis plpgsql
die PLPGSQL-Sprachunterstützung zu der Datenbank hinzugefügt werden. Bei mir kam allerdings der Hinweis, dass dies schon erledigt sei.
Die beiden SQL-Dateien abarbeiten lassen
user@desktop:~$ sudo -u postgres psql -d template_postgis -f /usr/share/postgresql/9.1/contrib/postgis-1.5/postgis.sql
und
user@desktop:~$ sudo -u postgres psql -d template_postgis -f /usr/share/postgresql/9.1/contrib/postgis-1.5/spatial_ref_sys.sql
Das war es dann auch schon. Im Anschluss kann mit dem Befehl
createdb -T template_postgis -O user DatenbankName
eine Datenbank erzeugt werden, die Geo-Daten verarbeiten kann. Mit dem Parameter -O wird der Nutzer user zum Besitzer dieser Datenbank gemacht und erhält alle notwendigen Rechte.
Comments
die frauke (not verified)
Danke bjoern!! Auf diese Info
Wed, 03/12/2014 - 3:11pmDanke bjoern!! Auf diese Info habe ich schon lange gewartet!
die frauke (not verified)
Ja! Linux nervt einfach!!!
Wed, 03/12/2014 - 3:12pmJa! Linux nervt einfach!!!
Bjoern (not verified)
.... hüstel .. :-)
Wed, 03/12/2014 - 3:18pm.... hüstel .. :-)
Add comment