Ubuntu 12.04,PostgreSQL-9.1 - 无法访问$ libdir / postgis-2.0

时间:2013-10-09 11:50:08

标签: ubuntu-12.04 postgresql-9.1 postgis

早上好,集体智慧。

我最近不得不通过将原始数据目录文件插入全新安装来恢复postgresql-9.1数据库。除了我无法打开PostGIS空间数据外,我的所有数据都完好无损。

我可以使用以下方法在新数据库上启用空间数据:

CREATE extension postgis;

但是,尝试访问已恢复的空间数据库中的数据会导致错误。

例如,

SELECT PostGIS_full_version();

抛出错误:

ERROR: could not access file "$libdir/postgis-2.0": No such file or directory
SQL state: 58P01
Context: SQL statement "SELECT postgis_lib_version()"
PL/pgSQL function "postgis_full_version" line 17 at SQL statement

我在这个主题上看过这篇文章,但是没有足够的信息来解决我的问题。

ERROR: could not access file "$libdir/postgis-2.0" postgresapp

这是我的PostGIS版本:

POSTGIS="2.1.0SVN" GEOS="3.4.1-CAPI-1.8.0 r3892" PROJ="Rel. 4.7.1, 23 September 2009" GDAL="GDAL 1.7.3, released 2010/11/10" LIBXML="2.7.8" LIBJSON="UNKNOWN" (core procs from "2.1.0SVN" need upgrade) RASTER (raster procs from "2.1.0SVN" need upgrade)

我假设这是一个路径变量,我需要以某种方式重置,但我不知道如何访问它。

非常感谢你的提示。

忘了说:我确实在pg_config文件中检查了libdir的设置。它设置为usr / lib / postgresql / 9.1 / lib,它适用于我启用的新数据库。有没有办法检查旧数据的设置?怎么会有所不同? THX。

4 个答案:

答案 0 :(得分:3)

我安装了2.1.0SVN一段时间并解决了问题而没有降级http://www.lontongcorp.com/?p=783

基本上你需要链接

sudo ln -s /usr/lib/postgresql/9.2/lib/postgis-2.1.so /usr/lib/postgresql/9.2/lib/postgis-2.0
sudo ldconfig

答案 1 :(得分:1)

解决:一些更多的根源导致我在PostGIS数据库上的扩展,我无法更新到2.1.0SVN。重新安装到PostGIS 2.0.3解决了这个问题。

答案 2 :(得分:0)

我使用postgres 9.3和postgis 2.1在debian上遇到了同样的问题,我通过重新安装postgis-2.1解决了它,现在它正常工作。

答案 3 :(得分:0)

通过yum升级postgres + postgis后我遇到了同样的问题。

我通过升级postgis website

中提到的数据库解决了这个问题
-- Upgrade PostGIS (includes raster)
ALTER EXTENSION postgis 
 UPDATE TO "2.1.4";
-- Upgrade Topology
ALTER EXTENSION postgis_topology 
 UPDATE TO "2.1.4";
相关问题