如何在pgadmin3中启用Shapefile GUI加载程序?


20

我已经在Ubuntu 11.10上安装了PostGIS 1.5.3的PostgreSQL 9.1。

按照说明,我还安装了pgadmin3 1.14.0-beta1 。

如果我没记错的话,当我在Windows上安装PostGIS时,pgadmin自动安装了Shapefile GUI Loader插件。但是,在Ubuntu上,插件下拉菜单为空。

我发现的说明似乎是Windows特定的。

有没有办法在Ubuntu上安装/启用它?


1
如果从源代码安装PostGIS,则会有一个--with-guiconfigure标志,但我从未尝试过这样做,所以我不能说它是否有效
Mike T

@MikeToews:谢谢。我现在也在文档中注意到了这一点。值得记住,但我仍然希望在已安装的堆栈中启用它。
radek

1
我也有同样的问题。我能够通过突触包安装opengeo-postgis-shapeloader,但在pgAdmin3中看不到它。我正在使用Xubuntu 10.04

我无法--with-gui在ubuntu上使用它。您可以下载OpenGeo软件包opengeo.org/technology/suite/download并使用其随附的gui,但这并不理想。
djq 2012年

1
@jessie请检查我答案中的plugins.ini内容是否对您有用。
RK 2012年

Answers:


12

如果要轻松安装,则可能需要重新开始并使用PostGIS 的OpenGeo Suite版本

$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

或者,您可以只安装形状加载器,而不是整个postgis软件包。

$sudo apt-get install opengeo-postgis-shapeloader  

它会安装在/ usr / sbin中,您需要建立到$ PGBINDIR的符号链接(在本例中是/ usr / bin中)

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

最后,在您的plugins.ini文件中:

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

当您使用pgadmin3 1.14.0时,我认为您需要将plugins.ini放在/usr/share/pgadmin3/plugins.d/下。较低的版本将其放在/ usr / share / pgadmin3 /下


感谢那。尝试了第二种方法并更新了我的plugins.ini文件-不幸的是,它没有做任何更改:/
radek 2012年

嗯...我从OpenGeo版本中获取了plugins.ini文件。也许您必须设置参数以匹配您当前的配置?我只是在pkgs.org上查看了包裹清单。您可以验证shp2pgsql是否在您的PGBINDIR中吗?
RK 2012年

我到底该如何验证?
radek

您可以运行find并检查文件系统中是否存在shp2pgsql-gui吗?
RK 2012年

1
应该不是wget -qO- apt.opengeo.org/gpg.key | sudo易于键添加-
hoge6b01

4

我简直不敢相信我在2014年的12.04上会遇到同样的问题。

GUI和命令行shapeloader都不使用opengeo-suite安装。

我只是遵循了该网站上菜鸟友好的指示:http : //www.staygeo.com/2013/05/enabling-postgis-shapefile-and-dbf.html,它与RK的指令差不多是两年前的。

“在终端上使用以下命令安装opengeo-postgis2-shapeloader:

sudo apt-get install opengeo-postgis2-shapeloader

它以shp2pgsql-gui的形式安装在/usr/lib/postgresql/9.2/bin中。现在,在/ usr / bin目录中为同一链接创建一个符号链接。在此之前,您可能要检查您拥有的PostgreSQL版本是否为9.2。

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

现在是时候编辑plugins.d文件了。使用以下命令打开文件进行编辑:

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

将以下内容粘贴到文件末尾:

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

注意:您可能必须在计算机上设置环境变量PGBINDIR。要检查是否已设置环境变量,请在终端上键入以下内容:

echo $PGBINDIR

如果结果显示为空行,则表明未设置环境变量。您必须将其设置为/ usr / bin(shapefile加载程序的符号链接所在的位置)。为此,请使用以下命令:

PGBINDIR=/usr/bin

完成上述步骤后,调用pgAdmin III来查看“ PostGIS Shapefile和DBF Loader”在插件下方列出。”

没有版权的意向(它写得好,所以我没有解释:)。


1
在从ubuntugis-stableppa 安装PostGIS / QGIS的过程中,shp2pgsql-gui已经安装了附件,因此我要做的就是将代码添加到plugins.ini文件中。
拉斐尔2014年

3

这个响应可能很晚,但是我遇到了同样的麻烦,并且找到了解决方案。在终端上尝试以下命令:

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

1
谢谢,不幸的是对我的情况没有帮助:/
radek 2011年

1

您可以在此处尝试说明。它绝对是Fedora上的一个单独的可执行文件。另外,您是否尝试过:

须藤apt-get install shp2pgsql-gui?


1
我也想过须藤。不幸的是,回复是:Unable to locate package shp2pgsql-gui。感谢其他指针-会看看。
radek 2011年

1

步骤1。在文件夹PgAminIII中创建文件夹名称:plugin.d例:

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

第2步。在新的插件文件夹中为您所需的应用程序创建文件配置

例如:postgis.shp2pgsql-gui

 psql

detai文件: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

谢谢,但问题的意思是Ubuntu的/ Linux的具体..
拉德克

0

似乎可以在Ubuntu PostGIS存储库中找到,而PostGIS Debian说明的底部介绍了如何安装它:

打开终端,然后键入:

sudo apt-get install postgis

(注意:这来自主要的Ubuntu软件存储库,因为PostgreSQL APT存储库似乎不再打包SHP2PGSQL-GUI ...)

现在打开SHP2PGSQL应用程序:

shp2pgsql-gui

按照屏幕上的提示加载数据。


0

应用程序名称是shp2pgsql-gui,它位于postgis-gui软件包中。安装并搜索您的linux程序。它在pgadmin3之外启动。这是我一直使用的技巧。

sudo apt-get install postgis-gui


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.