Liunx环境下源码安装PostgreSQL+PostGIS,检查功能的函数,如Touches(), Contains(), Disjoint() 还有一些空间操作函数,如Inter
 
  
生产环境中安装postgreSQL + postGIS 
生产环境如下:
操作系统:
CentOS release 5.5 (Final)
需要安装:
postgresql 地址:
postgis 地址:
proj 地址:
geos 地址:
安装步骤:
postgre的安装 版本为9.1.3
wget 
tar -jxvf postgresql-9.1.3.tar.bz2 
cd postgresql-9.1.3 
./configure 
gmake --> All of PostgreSQL successfully made. Ready to install. 
gmake install --> PostgreSQL installation complete.
vim INSTALL 可以查看其官方安装步骤:
./configure 
gmake 
su 
gmake install 安装软件到指定的配置阶段prefix指定的目录下 
adduser postgres 添加postgres用户,postgreSQL的默认超级管理员 
mkdir /usr/local/pgsql/data 创建存放数据的目录 
chown postgres /usr/local/pgsql/data 改变文件拥有者 
su - postgres 切换到postgres用户 
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data 初始化磁盘上的数据库的存储区间 
-- 成功后会提醒 /usr/local/pgsql/bin/postgres -D /data/pgsql or /usr/local/pgsql/bin/pg_ctl -D /data/pgsql -l logfile start 
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 & 指定数据目录启动数据库服务器(输出重定向到logfile,并且运行在后台,也可以用pg_ctl来启动) 
/usr/local/pgsql/bin/createdb test 创建测试数据库,确认安装顺利完成
...
配置一下环境变量:
LD_LIBRARY_PATH=/usr/local/pgsql/lib 动态连接库的所在目录
PATH=/usr/local/pgsql/bin:$PATH 为了方便使用,添加命令的搜索路径
输入pg_config 查看
BINDIR = /usr/local/pgsql/bin 
DOCDIR = /usr/local/pgsql/share/doc 
HTMLDIR = /usr/local/pgsql/share/doc 
INCLUDEDIR = /usr/local/pgsql/include 
PKGINCLUDEDIR = /usr/local/pgsql/include 
INCLUDEDIR-SERVER = /usr/local/pgsql/include/server 
LIBDIR = /usr/local/pgsql/lib 
PKGLIBDIR = /usr/local/pgsql/lib 
LOCALEDIR = /usr/local/pgsql/share/locale 
MANDIR = /usr/local/pgsql/share/man 
SHAREDIR = /usr/local/pgsql/share 
SYSCONFDIR = /usr/local/pgsql/etc 
PGXS = /usr/local/pgsql/lib/pgxs/src/makefiles/pgxs.mk 
CONFIGURE = 
CC = gcc 
CPPFLAGS = -D_GNU_SOURCE 
CFLAGS = -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wformat-security -fno-strict-aliasing -fwrapv 
CFLAGS_SL = -fpic 
LDFLAGS = -Wl,-rpath,'/usr/local/pgsql/lib',--enable-new-dtags 
LDFLAGS_EX = 
LDFLAGS_SL = 
LIBS = -lpgport -lz -lreadline -ltermcap -lcrypt -ldl -lm 
VERSION = PostgreSQL 9.1.3
postgreSQL 安装完毕。
注意事项:安装postgres 时
readline库(默认),命令行编辑功能,这个库虽然不是必须的(可以在配置阶段通过 --without-readline选项来取消),但是强烈建议安装readline, 
使用psql时,可以使用方向键来选择和编辑前面键入的命令
查看是否安装过 rpm -qa | grep readline
zlib库(默认),主要用于pg_dump和pg_restore两个操作的数据压缩功能,这个库也不是必须的(可以在配置阶段通过--without-zlib选项来取消),
查看是否安装过 rpm -qa | grep zlib
在编译程序前必须要安装这些包,否则无法通过编译,此外,还有在配置阶段还有很多可选包,可以通过./configure --help查看
选项 描述
– prefix = prefix安装到prefix指向的目录;默认为/usr/local/pgsql
– bindir = dir安装应用程序到dir;默认为prefix/bin
– with-d ocdir= dir安装文档到dir;默认为prefix/doc
– with-p gport= port设置默认的服务器端网络连接服务TCP端口号
– with-t cl为服务端提供Tcl存储过程支持
– with-p erl为服务端提供Perl存储过程支持
– with-p ython为服务端提供Python存储过程支持
PostGIS 的安装 版本为 PostGIS 1.5.4 Release 
首先下载源码包 proj-4.8.0,geos-3.3.3,libxml2-2.6.26,虽然这三个库不是安装postgis强制的,但是,没有这三个包,
postgis一定程度上失去了空间数据库的意义。因为Proj4提供了投影的相关操作,如postgis中的transform()函数,,geos则为postgis提供了很多拓扑