Wie kann ich Shapefile GUI Loader in pgadmin3 aktivieren?


20

Ich habe PostgreSQL 9.1 mit PostGIS 1.5.3 unter Ubuntu 11.10 installiert.

Ich habe auch pgadmin3 1.14.0-beta1 installiert, indem ich diesen Anweisungen gefolgt bin .

Wenn ich mich richtig erinnere, wurde bei der Installation von PostGIS unter Windows pgadmin automatisch mit dem Shapefile GUI Loader-Plugin geliefert, das bereits installiert war. Unter Ubuntu ist das Dropdown-Menü des Plugins jedoch leer.

Die Anweisungen, die ich gefunden habe, scheinen Windows-spezifisch zu sein.

Gibt es eine Möglichkeit, es auf Ubuntu zu installieren / zu aktivieren?


1
Es gibt ein --with-guiKonfigurations-Flag, wenn Sie PostGIS von der Quelle installieren, aber ich habe es noch nie versucht, daher kann ich nicht sagen, ob es funktioniert
Mike T

@ MikeToews: Danke. Ich habe es jetzt auch in den Dokumenten bemerkt. Es lohnt sich, sich an die Zukunft zu erinnern, aber ich hoffe immer noch, es in einem bereits installierten Stack zu aktivieren.
Radek

1
Ich habe das gleiche Problem. Ich konnte den opengeo-postgis-shapeloader über das synaptic-Paket installieren, kann ihn aber in pgAdmin3 nicht sehen. Ich benutze Xubuntu 10.04

Ich konnte die --with-guiFlagge nicht dazu bringen , an Ubuntu zu arbeiten. Sie können das OpenGeoPaket opengeo.org/technology/suite/download herunterladen und die mitgelieferte GUI verwenden, diese ist jedoch nicht ideal.
Dienstag,

1
@jessie Bitte überprüfe, ob der Inhalt der plugins.ini in meiner Antwort für dich funktioniert.
RK

Antworten:


12

Wenn Sie eine problemlose Installation wünschen, können Sie von vorne beginnen und die OpenGeo Suite-Version von PostGIS verwenden.

$sudo wget -qO- http://apt.opengeo.org/gpg.key | apt-key add -
$sudo echo "deb http://apt.opengeo.org/ubuntu lucid main" >> /etc/apt/sources.list
$sudo apt-get update
$apt-cache search opengeo
$sudo apt-get install opengeo-postgis

Oder Sie können einfach den Shape Loader anstelle des gesamten Postgis-Pakets installieren.

$sudo apt-get install opengeo-postgis-shapeloader  

Es wird in / usr / sbin installiert. Sie müssen eine symbolische Verknüpfung zu $$ PGBINDIR herstellen (in diesem Fall in / usr / bin).

$sudo ln -s /usr/sbin/shp2pgsql-gui /usr/bin/shp2pgsql-gui

Schließlich in Ihrer plugins.ini- Datei:

;
; 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

Da Sie pgadmin3 1.14.0 verwenden, müssen Sie die plugins.ini unter /usr/share/pgadmin3/plugins.d/ platzieren . Niedrigere Versionen setzen es unter / usr / share / pgadmin3 /


Dank dafür. Versuchte deine zweite Methode und aktualisierte meine plugins.iniDatei - leider hat sich nichts geändert: /
radek

Hmmm ... Ich habe diese plugins.ini-Datei aus der OpenGeo-Version genommen. Möglicherweise müssen Sie die Parameter entsprechend Ihrer aktuellen Konfiguration einstellen? Ich habe gerade die Paketlisten auf pkgs.org überprüft. Können Sie überprüfen, ob sich shp2pgsql in Ihrem PGBINDIR befindet?
RK

Wie genau könnte ich das überprüfen?
Radek

Könnten Sie find ausführen und prüfen, ob shp2pgsql-gui in Ihrem Dateisystem vorhanden ist?
RK

1
Sollte es nicht wget -qO- apt.opengeo.org/gpg.key | sein ? sudo apt-key add -
hoge6b01

4

Ich kann nicht glauben, dass ich 2014 mit dem 12.04 das gleiche Problem habe.

Weder die GUI noch der Befehlszeilen-Shapeloader werden mit der opengeo-suite installiert.

Ich habe einfach die noob-freundlichen Anweisungen auf dieser Website befolgt: http://www.staygeo.com/2013/05/enabling-postgis-shapefile-and-dbf.html , die den Anweisungen von RK vor fast 2 Jahren entsprechen.

"Installieren Sie opengeo-postgis2-shapeloader mit diesem Befehl am Terminal:

sudo apt-get install opengeo-postgis2-shapeloader

Es wird in /usr/lib/postgresql/9.2/bin als shp2pgsql-gui installiert. Erstellen Sie nun einen symbolischen Link für dasselbe Verzeichnis in / usr / bin. Zuvor möchten Sie möglicherweise überprüfen, ob die von Ihnen verwendete postgresql-Version 9.2 ist.

sudo ln -s /usr/lib/postgresql/9.2/bin/shp2pgsql-gui /usr/bin/shp2pgsql-gui 

Jetzt ist es an der Zeit, die Datei plugins.d zu bearbeiten. Verwenden Sie den folgenden Befehl, um die Datei zum Bearbeiten zu öffnen:

gksudo gedit /usr/share/pgadmin3/plugins.d/plugins.ini

Fügen Sie den folgenden Inhalt am Ende der Datei ein:

;
; 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

Hinweis: Möglicherweise müssen Sie die Umgebungsvariable PGBINDIR auf Ihrem Computer festlegen. Um zu überprüfen, ob die Umgebungsvariable bereits gesetzt ist, geben Sie dies auf Ihrem Terminal ein:

echo $PGBINDIR

Wenn als Ergebnis eine leere Zeile angezeigt wird, bedeutet dies, dass die Umgebungsvariable nicht festgelegt ist. Sie müssen es auf / usr / bin setzen (den Ort, an dem sich der symbolische Link für den Shapefile Loader befindet). Verwenden Sie dazu diesen Befehl:

PGBINDIR=/usr/bin

Sobald die obigen Schritte abgeschlossen sind, rufen Sie pgAdmin III auf, um die unter den Plugins aufgelisteten "PostGIS Shapefile und DBF Loader" zu sehen. "

Kein Urheberrecht beabsichtigt (es ist gut geschrieben, also habe ich es nicht umschrieben :).


1
Mit meiner Installation von PostGIS / QGIS aus dem ubuntugis-stableppa shp2pgsql-guikommt das bereits installiert, alles was ich tun musste, war den Code zur plugins.iniDatei hinzuzufügen .
Raphael

3

Diese Antwort mag sich verspäten, aber ich hatte die gleichen Probleme und fand die Lösung. Versuchen Sie diesen Befehl auf Ihrem Terminal:

$sudo ln -s /usr/lib/postgresql/9.1/bin/shp2pgsql /usr/bin/shp2pgsql

1
Vielen Dank, leider hat in meinem Fall nicht geholfen: /
Radek

1

Sie können die Anweisungen hier versuchen . Es ist definitiv eine separate ausführbare Datei auf Fedora. Haben Sie auch versucht:

sudo apt-get install shp2pgsql-gui?


1
Ich habe auch an sudo gedacht. Leider Antwort ist: Unable to locate package shp2pgsql-gui. Danke für den anderen Zeiger - werde mal schauen.
Radek

1

Schritt 1. Ordnernamen erstellen: plugin.d im Ordner PgAminIII Beispiel:

C:\Program Files\OpenGeo\OpenGeo Suite\pgsql\9.1\pgAdmin III\plugins.d

Schritt 2. Erstellen Sie Dateien, die Sie für die App benötigen, im neuen Plug-In-Ordner

EX: postgis.shp2pgsql-gui

 psql

Detai-Datei: postgis.shp2pgsql-gui:

; ; PostGIS shp2pgsql-gui (Windows):;

Title=PostGIS Shapefile and DBF loader 2.0
Command="$$PGBINDIR\shp2pgsql-gui.exe" -h "$$HOSTNAME" -p $$PORT -U "$$USERNAME" -d "$$DATABASE" -W "$$PASSWORD"
Description=Open a PostGIS ESRI Shapefile or Plain dbf loader console to the current database.
KeyFile=$$PGBINDIR\shp2pgsql-gui.exe
Platform=windows
ServerType=postgresql
Database=Yes
SetPassword=Yes

Danke, aber die Frage sollte Ubuntu / Linux-spezifisch sein.
radek

0

Es scheint, dass dies im Ubuntu PostGIS-Repository zu finden ist, und das Ende der PostGIS-Debian-Anleitung beschreibt, wie man es installiert:

Öffnen Sie das Terminal und geben Sie Folgendes ein:

sudo apt-get install postgis

(Hinweis: Dies kommt aus dem Haupt-Ubuntu-Software-Repository, da das PostgreSQL-APT-Repository anscheinend keine SHP2PGSQL-GUI mehr enthält ...)

Öffnen Sie jetzt die SHP2PGSQL-Anwendung:

shp2pgsql-gui

Befolgen Sie die Anweisungen auf dem Bildschirm, um Ihre Daten zu laden.


0

Der Name der Anwendung lautet shp2pgsql-gui und befindet sich im Paket postgis-gui . Installieren Sie es und suchen Sie danach Ihre Linux-Programme. Es startet es außerhalb von pgadmin3. Das ist der Trick, den ich immer benutze.

sudo apt-get install postgis-gui


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.