今天弄了好久,终于把Postgis安装完成,Postgresql 8.4的安装请参考官方文档,这里不记录了,下面是Postgis 1.5的安装过程。
环境信息
Postgresql: 8.4.4
Postgis: 1.5.1
OS : Red Hat Enterprise 5
安装 proj-4.7.0
下载地址: http://trac.osgeo.org/proj/
1 |
cd proj-4.7.0/ |
安装 geos-3.2.2
下载地址: http://trac.osgeo.org/geos/
1 |
./configure --prefix=/usr/local/pg_tool/geos --enable-python --enable-ruby |
安装 postgis-1.5.1
下载地址:http://postgis.refractions.net/download/
1 |
./configure --prefix=/usr/local/pg_tool/postgis --with-pgconfig=/opt/pgsql/bin/pg_config --with-projdir=/usr/local/pg_tool/proj --with-geosconfig=/usr/local/pg_tool/geos/bin/geos-config |
说明:安装成功后会在目录$PGHOME/share/contrib/下产生一个名为postgis-1.5的目录。
测试
新建用户,表空间,数据库,language
1 |
postgres=#create role postgis login with encrypted password 'postgis' nosuperuser nocreatedb nocreaterole noinherit ; |
新增加环境变量 ,修改文件 .bash_profile
1 |
PROJ_HOME=/usr/local/pg_tool/proj |
编缉完成后,执行.bash_profile 立即生效。
载入 PostGIS 对象和函数
执行脚本 postgis.sql
1 |
cd $PGHOME/share/contrib/postgis-1.5 |
说明: 本人在这里执行不成功,报以下ERROR,
1 |
psql:postgis.sql:59: ERROR: could not load library "/opt/pgsql/lib/postgis-1.5.so": |
查了相关文档,说是要配置环境变量 LD_LIBRARY_PATH 的 proj 和 geos 的库的路径, 但按照要求配置,还是不成功,从错误提示上看,脚本找不到libgeos_c.so.1文件,这个文件在 $GEOS_HOME/lib 目录下,折腾了好久都不成功;最后根据提示,将文件libgeos_c.so.1 COPY到目录/opt/pgsql/lib后,然后再次执行 psql -d postgis -f postgis.sql
,终于成功了但为什么程序不会从LD_LIBRARY_PATH找呢?非常奇怪,以后要是有哪位读者知道的话,可以留言给我,谢谢!
执行脚本 spatial_ref_sys
1 |
psql -d [yourdatabase] -f spatial_ref_sys.sql |
关于文档
Postgis的详细介绍,在安装包里有非常详细的HTML文档,包括安装,使用,和常见问题等.
目录: postgis-1.5.1dochtml
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/236325.html