Ich folge einem Tutorial zur Installation von Pgrouting. Allerdings habe ich das Teil nicht bekommen, als es heißt
Starten Sie pgAdmin und erstellen Sie eine neue Datenbank basierend auf Ihrer PostGIS-Vorlage
Woher bekomme ich diese Postgis-Vorlage? Ich weiß, dass ich PostGIS mit Homebrew installiert habe. Aber ich konnte die Vorlage nicht finden. Ich lasse jetzt macos laufen.
Antworten:
Neue Methode mit PostgreSQL 9.1
Dank der Ratschläge von RK unten habe ich mir dieses Tutorial angesehen und festgestellt, dass Sie für PostgreSQL 9.1 nur die Erweiterungen
postgis
undpostgis_topology
eine vorhandene Datenbank mithilfe der Kontextmenüs von pgAdmin hinzufügen müssen. Um eine Postgis-Vorlage zu erstellen, habe ich eine neue Datenbank mit dem Namen erstellttemplate-postgis
und diese Erweiterungen hinzugefügt. Ich habe dann meine andere Datenbank mit dieser Vorlage erstellt. Bei der Verwendung stelltepg_dump
ich fest, dass der Export viel kleiner war, da er nur diese Zeilen zu enthalten scheint und die Erweiterungsfunktionen nicht auswertet:Alte redundante Methode:
Am Ende habe ich die .sql-Dateien hier verwendet:
Außerdem trat dieser Fehler auf, als ich eine vorhandene PostGIS-Datenbank in eine neue Datenbank aus dieser Vorlage importierte:
Also habe ich die Anweisungen hier befolgt und
ON_ERROR_ROLLBACK=on
die Vorlage eingerichtet, nachdem ich eine leere Datenbank mit dem Namen "template_postgis" erstellt hatte:Und dann meine Backup-Datenbank importiert, zB:
Noch ältere Methode:
Ich tat dies:
Der Pfad
postgis--2.0.1.sql
ist je nach Konfiguration unterschiedlich.quelle
Wenn Sie PostgreSQL 9.1 oder höher ausführen, müssen Sie sich nicht mit der Vorlagendatenbank befassen . Erstellen Sie einfach eine Datenbank und geben Sie in der SQL-Ansicht in pgAdmin Folgendes ein und führen Sie es aus
Dadurch wird Ihre Datenbank räumlich aktiviert.
quelle
CREATE EXTENSION postgis_topology;
CREATE EXTENSION
Benötigt Superuser-Rechte, daher ist das Erstellen / Verwenden einer Vorlage möglicherweise eine sehr gute Idee.Tatsächlich ist dies die Grundlage für die Postgis-Installation.
Wenn Sie eine Postgis-Vorlage haben, können Sie daraus eine neue Datenbank erstellen:
Wenn Sie es nicht haben, können Sie dies auf folgende Weise tun:
Sie können Bash - Skripte Debian / Ubuntu verwenden - create_template_postgis-debian.sh, hier
ich hoffe es hilft dir ...
quelle
postgres
nicht über die Berechtigung, ein Terminal zu verwenden. In diesem Fall schlägt dersudo su postgres
Befehl im Hintergrund fehl. Um dies zusudo -u postgres
überwinden, können Sie all diesen Befehlen voranstellen , um den Befehl als postgres-Benutzer auszuführen, ohne zum postgres-Benutzer zu wechseln.Soweit ich mich erinnere, steht für den Workshop ein Skript zum Erstellen dieser Vorlagendatenbanken zur Verfügung. Es ist auch hier verfügbar: https://github.com/pgRouting/pgrouting-contrib/blob/master/scripts/create_templates.sh
Schließlich müssen Sie hier und da ein paar Dinge ändern, weil es für Debian / Ubuntu geschrieben wurde. Aber Sie können einfach auswählen, was Sie brauchen.
quelle
Ich benutze dieses Bash-Skript, um die Erstellung einer neuen Datenbank mit aktiviertem Postgis und auf stdin angegebenem Namen auszuführen.
Postgres 9.3
PostGIS 2.1.3
quelle