尝试运行Create Extension postgis时出错

时间:2013-09-12 15:39:14

标签: postgresql centos postgis

我已多次安装PostgreSQL 9.x和PostGIS 1.5 / 2.0,从未遇到过这个问题。

我刚刚启动并运行了新的CentOS 6.3服务器,并且我按照预期运行了Postgres 9.3。我跑了

yum install postgis2_93

我可以在

中看到这些文件
/usr/pgsql-9.3/share/contrib/

然而,当我跑

CREATE EXTENSION postgis;

我收到了

ERROR:  could not open extension control file "/usr/pgsql-9.3/share/extension/postgis.control": No such file or directory

我使用的教程(#1#2)在安装PostGIS和创建扩展程序之间没有显示任何步骤。

我缺少什么?

4 个答案:

答案 0 :(得分:3)

更新: TEAM刚刚发布了解决问题的postgis.2.1.0-3 RPM软件包:现在可以使用扩展名:

/usr/pgsql-9.3/share/extension/postgis.control

END UPDATE。 [...]

我决定从源代码编译POSTGIS。 这是CentOS 6.4 64bit的逐步步骤:

wget http://download.osgeo.org/postgis/source/postgis-2.1.0.tar.gz
tar xvf postgis-2.1.0.tar.gz
cd postgis-2.1.0
./configure --with-pgconfig=/usr/pgsql-9.3/bin/pg_config --without-raster
make
make comments
make install
make install-comments
su - postgres 
cd /usr/pgsql-9.3/share/contrib/postgis-2.1/
psql -d postgres -f postgis.sql
psql -d postgres -f spatial_ref_sys.sql
psql -d postgres -f postgis_comments.sql
psql -d postgres -f topology.sql
psql -d postgres -f topology_comments.sql

答案 1 :(得分:2)

http://yum.pgrpms.org/提供的postgis2_93 RPM缺少扩展支持。本周早些时候我向Devrim报告了此事,他一直试图修复它。

http://svn.pgrpms.org/changeset/299

希望下一次推出RPMS到网站解决了这个问题。

更新: postgis2_93-2.1.0-3已经发布,解决了这个问题但是对gdal 1.9提出了rpm要求,EPEL没有提供。我是从ELGIS得到的。

答案 2 :(得分:0)

对于Postgresql 9.6,请尝试以下命令:

yum install postgis
yum install postgis-client 
yum install postgresql96-contrib

答案 3 :(得分:0)

我遇到了同样的问题,因此我使用以下步骤进行了修复

我的环境是

Windows 10,postgres sql 11服务器和pgAdmin 4

  1. 从(不是安装程序的zip文件)下载二进制文件http://download.osgeo.org/postgis/windows/pg11/postgis-bundle-pg11-2.5.3x64.zip
  2. 将zip文件提取到文件夹中
  3. 更改“ makepostgisdb_using_extensions.bat”中的设置
  4. 以管理员身份运行文件 如果以上步骤给出错误,请手动复制基于“ makepostgisdb_using_extensions.bat”的文件 复制Xcopy部分中的文件,例如。 xcopy bin *。*“%PGBIN%”等于

extract_folder \ bin进入C:\ Program Files \ PostgreSQL \ 11 \ pgAdmin 4 \ bin

按照每个xcopy命令复制相关文件 5.重新启动postgre服务器 6.按上述顺序运行第4步 7.否则您可以通过pgAdmin UI创建gis扩展

==========祝你好运