注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

PostgreSQL 中文网

 
 
 

日志

 
 

Postgresql 8.4 + Postgis + Linux 的安装  

2010-08-22 19:09:43|  分类: Postgres基础 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 

今天弄了好久,终于把Postgis安装完成,Postgresql 8.4的安装请参考官方文档,这里不记录了,
下面是Postgis 1.5的安装过程。

环境信息
Postgresql: 8.4.4
Postgis:    1.5.1
OS :  Red Hat Enterprise 5

#############  Bein intall postgis ######################
1 install proj-4.7.0
 下载地址: http://trac.osgeo.org/proj/
 cd proj-4.7.0/
#./configure --prefix=/usr/local/pg_tool/proj
#  make
#  make install
 
2 install  geos-3.2.2
下载地址: http://trac.osgeo.org/geos/
# ./configure --prefix=/usr/local/pg_tool/geos    --enable-python --enable-ruby
# make
# make check
# make install

3 install postgis-1.5.1
下载地址:http://postgis.refractions.net/download/
./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

conigure 成功后,会出现以下界面:
PostGIS is now configured for i686-pc-linux-gnu

 -------------- Compiler Info -------------
  C compiler:           gcc -g -O2
  C++ compiler:         g++ -g -O2

 -------------- Dependencies --------------
  GEOS config:          /usr/local/pg_tool/geos/bin/geos-config
  GEOS version:         3.2.2
  PostgreSQL config:    /opt/pgsql/bin/pg_config
  PostgreSQL version:   PostgreSQL 8.4.4
  PROJ4 version:        47
  Libxml2 config:       /usr/bin/xml2-config
  Libxml2 version:      2.6.26
  PostGIS debug level:  0

 -------- Documentation Generation --------
  xsltproc:             /usr/bin/xsltproc
  xsl style sheets:     /usr/share/sgml/docbook/xsl-stylesheets
  dblatex:             
  convert:              /usr/bin/convert

# make
# make check
# make install
说明:安装成功后会在目录$PGHOME/share/contrib/下产生一个名为postgis-1.5的目录。

4 测试()
4.1 新建用户,表空间,数据库,language
postgres=#create role postgis login with encrypted password 'postgis' nosuperuser nocreatedb nocreaterole noinherit ;
postgres=# create tablespace tbs_postgis_data owner postgis LOCATION '/opt/pgdata/tbs_postgis_data';
postgres=# create tablespace tbs_postgis_idx owner postgis LOCATION '/opt/pgdata/tbs_postgis_idx';
postgres=#create database postgis owner=postgis template=template0 ENCODING='UTF8' tablespace=tbs_postgis_data;
create language plpgsql;

4.2 新增加环境变量
vi .bash_profile
PROJ_HOME=/usr/local/pg_tool/proj
GEOS_HOME=/usr/local/pg_tool/geos
POSTGIS_HOME=/usr/local/pg_tool/postgis

LD_LIBRARY_PATH=$PGSQL_HOME/lib:$PROJ_HOME/lib:$GEOS_HOME/lib:$POSTGIS_HOME/lib
PATH=$PGSQL_HOME/bin:$PATH:$HOME/bin

编缉完成后,执行.bash_profile 立即生效

4.3 载入 PostGIS 对象和函数
4.3.1 执行脚本  postgis.sql
cd $PGHOME/share/contrib/postgis-1.5
$ psql -d postgis -f postgis.sql > 1.out
说明: 本人在这里执行不成功,报以下ERROR,

psql:postgis.sql:59: ERROR:  could not load library "/opt/pgsql/lib/postgis-1.5.so":
libgeos_c.so.1: cannot open shared object file: No such file or directory

查了相关文档,说是要配置环境变量 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找呢?非常奇怪,以后要是有哪位读者知道的话,可以留言
给我,谢谢!

4.3.2 执行脚本 spatial_ref_sys
psql -d [yourdatabase] -f spatial_ref_sys.sql

5. 关于文档
  Postgis的详细介绍,在安装包里有非常详细的HTML文档,包括安装,使用,和常见问题等.
  目录: postgis-1.5.1\doc\html

  评论这张
 
阅读(27568)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016