CentOS 配置postgresql+psotgis
1.安装CentOS并下载所需的材料包:
2.创建用户postgres:
# groupadd postgres
# useradd -g postgres postgres
3.安装必须的工具包:
# yum -y install gcc 安装gcc编译器
# yum -y install gcc-c++ 安装gcc-c++编译器
# yum -y install make 安装make,这个是自动编译源码的工具
# yum -y install kernel-headers 安装内核头文件,编译内核,驱动必要的头文件
# yum -y install kernel-devel 安装kernel-devel
# yum -y install readline-devel 安装readline-devel
# yum -y install zlib-devel 安装zlib-devel
4.安装libxml2包:
# tar -zvxf libxml2-2.6.26.tar.gz
# cd libxml2-2.6.26
# ./configure –prefix=/usr/local/libxml2
# make
# make install
5.安装proj包:
# tar -zvxf proj-4.8.0.tar.gz
# cd proj-4.8.0
# ./configure –prefix=/usr/local/proj
# make
# make install
下载:http://trac.osgeo.org/proj/
6.安装geos包:
# tar xvfj geos-3.3.6.tar.bz2
# cd geos-3.3.6
# ./configure –prefix=/usr/local/geos
# make
# make install
下载:http://trac.osgeo.org/geos/
7.安装postgresql 包:
# tar –zvxf postgresql-9.2.2.tar.gz
# cd postgresql-9.2.2
# ./configure –prefix=/usr/local/pgsql
# make
# make install
下载:http://www.postgresql.org/ftp/source/
8.添加环境变量:
备份:# cp /etc/profile profile.bak
# vi /etc/profile
添加:
PATH=$PATH:$HOME/bin
export PATH
PATH=$PATH:$HOME/bin
PGSQL_HOME=/usr/local/pgsql
PATH=$PATH:$PGSQL_HOME/bin
PROJ_HOME=/usr/local/proj
GEOS_HOME=/usr/local/geos
PATH=$PATH:$PROJ_HOME/bin:$GEOS_HOME/bin
LD_LIBRARY_PATH=$PGSQL_HOME/lib:$PROJ_HOME/lib:$GEOS_HOME/lib
export PATH
export PGSQL_HOME
export PROJ_HOME
export GEOS_HOME
export LD_LIBRARY_PATH
9.初始化数据库:
# mkdir /usr/local/pgsql/data
# cd /usr/local
把pgsql目录交给postgres管理:
# chown -R postgres:postgres pgsql
# su postgres
# /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
10.配置pg_hba.conf、postgresql.conf :
# su root 切换用户
# cd /usr/local/pgsql/data
备份:# cp pg_hba.conf pg_hba.conf.bak
# vi pg_hba.conf 后面加 host all all all trust
备份:# cp postgresql.conf postgresql.conf.bak
# vi postgresql.conf 将文件中的#listen_address=’localhost’ 改为 listen_address=’*’ 将#port=5432改为port=5432
11.设置postgresql启动:
拷贝安装包下面的:
..../contrib/start-scripts/linux 到/etc/init.d/ 目录下
# cp /home/postgresql/postgresql-9.2.2/contrib/start-scripts/linux /etc/init.d/postgis
# chmod a+x /etc/init.d/postgis
# chown -R postgres:postgres /etc/init.d/postgis
加入开机启动 # chkconfig --add postgis
12.安装postgis包:
# tar -zvxf postgis-1.5.8.tar.gz
# cd postgis-1.5.8
# LDFLAGS=-lstdc++
# ./configure -prefix=/usr/local/postgis --with-pgsql=/usr/local/pgsql/bin/pg_config --with-pgconfig=/usr/local/pgsql/bin/pg_config --with-proj=/usr/local/proj --with-geos=/usr/local/geos/bin/geos-config --with-geosconfig=/usr/local/geos/bin/geos-config --with-projdir=/usr/local/proj --with-xml2config=/usr/local/libxml2/bin/xml2-config
# make
# make install
如果需要--with-gdalconfig,则需要下载安装gdal:
# tar -zvxf gdal-1.11.0.tar.gz
# cd gdal-1.11.0
# ./configure -prefix=/usr/local/gdal
# make
# make install
使用时添加--with-gdalconfig=/usr/local/gdal/bin/gdal-config
下载:http://trac.osgeo.org/gdal/wiki/DownloadSource
13.检查postgres目录分配情况:
# vi /etc/passwd 对应信息应为:postgres:x:502:501::/usr/local/pgsql:/bin/bash
14.新建测试数据库:
# su postgres
# /usr/local/pgsql/bin/createdb demogis
# /usr/local/pgsql/bin/psql -d demogis -f /usr/local/pgsql/share/contrib/postgis-1.5/postgis.sql
# /usr/local/pgsql/bin/psql -d demogis -f /usr/local/pgsql/share/contrib/postgis-1.5/spatial_ref_sys.sql
15.修改防火墙配置:
# vi /etc/sysconfig/iptables
添加-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT
保存退出
# service iptables restart
End.