0.安装PostgreSQL数据库

参考安装PostgreSQL数据库(Linux篇)

1.安装proj4

#tar zxvf proj-4.8.0.tar.gz

#cd proj-4.8.0

#./configure --prefix=/opt/proj-4.8.0
#make
#make install
#ls /opt/proj-4.8.0

编辑文件/etc/ld.so.conf.d/proj-4.8.0.conf
#vi /etc/ld.so.conf.d/proj-4.8.0.conf
添加以下内容
/opt/proj-4.8.0/lib

保存并退出vi
执行以下命令,将proj4的so库的路径添加到系统中
#ldconfig

2.安装geos
#tar jxvf geos-3.3.7.tar.bz2

#cd geos-3.3.7
#./configure --prefix=/opt/geos-3.3.7
#make
#make install

编辑文件/etc/ld.so.conf.d/geos-3.3.7.conf
#vi /etc/ld.so.conf.d/geos-3.3.7.conf
添加以下内容
/opt/geos-3.3.7/lib
保存并退出vi
执行以下命令,将proj4的so库的路径添加到系统中
#ldconfig

3. 安装postgis

#tar zxvf postgis-1.5.8.tar.gz
#cd postgis-1.5.8
#./configure --with-pgconfig=/opt/pgsql-9.1.7/bin/pg_config \
                  --with-geosconfig=/opt/geos-3.3.7/bin/geos-config \
                  --with-projdir=/opt/proj-4.8.0/

#make 

#make install
postgis会安装到postgresql的目录下。
例如:shp2pgsql安装到/opt/pgsql-9.1.7/bin目录下

postgis的sql脚本安装在/opt/pgsql-9.1.7/share/contrib/postgis-1.5路径下

 至此,完成postgis的安装

4.创建postgis数据库

1) 启动postgresql数据库
2) 切换到postgres用户
#su - postgres
3) 创建数据库postgis
$createdb postgis

创建完成后就可以通过下面的命令登录postgis数据库
$psql -h 127.0.0.1 -d postgis -U postgres

此时的postgis数据库只是一个普通的一个postgresql数据库,并没有用户表。

4) 创建postgis空间数据库

postgis空间数据库由一系列的postgis函数、数据类型、触发器等构成。
postgis空间数据库的脚本路径为:/opt/pgsql-9.1.7/share/contrib/postgis-1.5/postgis.sql
执行以下命令,在postgis数据库上创建postgis的函数、数据类型等资源
$ psql -h 127.0.0.1 -d postgis -U postgres -f /opt/pgsql-9.1.7/share/contrib/postgis-1.5/postgis.sql

可以看出postgis创建了一系列的函数

5) 创建postgis空间数据库的空间参考表

postgis空间数据库的空间参考表脚本路径为:/opt/pgsql-9.1.7/share/contrib/postgis-1.5/spatial_ref_sys.sql
$psql -h 127.0.0.1 -d postgis -U postgres -f /opt/pgsql-9.1.7/share/contrib/postgis-1.5/spatial_ref_sys.sql
该命令在postgis数据库中创建了spatial_ref_sys表,用于存放空间投影信息。

至此,完成postgis空间数据库的创建。现在就可以向postgis数据库中导入shape图层文件,进行空间查询等操作。

5.导入shape图层

1) 启动"Shapefile and DBF Loader Exporter"

2) 连接postgis数据库

   

3) 点击"Add File"按钮,选择要导入的shapefile文件

 

4) 点击"Import"按钮导入shape文件

 

4) 导入完成后,可以在pgAdmin中看到刚刚导入的3个图层

转自:http://www.cnblogs.com/marsprj/archive/2013/02/08/2909413.html

[zz] 安装PostGIS(Linux篇)的更多相关文章

  1. 分布式文件系统 FastDFS 5.0.5 & Linux CentOS 7 安装配置(单点安装)——第一篇

    分布式文件系统 FastDFS 5.0.5 & Linux CentOS 7 安装配置(单点安装)--第一篇 简介 首先简单了解一下基础概念,FastDFS是一个开源的轻量级分布式文件系统,由 ...

  2. 安装 Kali Linux 后需要做的 20 件事

    安装 Kali Linux 后需要做的 20 件事 本文含有我觉得有用的每一件事情.本文分为三大部分: 专门针对Kali用户 Kali Linux是来自Debian的一个特殊版本,Kali Linux ...

  3. Redis学习之一VMWare Pro虚拟机安装和Linux系统的安装

    一.引言 设计模式写完了,相当于重新学了一遍,每次学习都会有不同的感受,对设计模式的理解又加深了,理解的更加透彻了.还差一篇关于设计模式的总结的文章了,写完这篇总结性的文章,设计模式的文章就暂时要告一 ...

  4. 在VMWare上安装Arch Linux

    1.为什么选择Arch Linux Arch Linux 是通用 x86-64 GNU/Linux 发行版.Arch采用滚动升级模式,尽全力提供最新的稳定版软件.初始安装的Arch只是一个基本系统,随 ...

  5. 版本控制工具Git工具快速入门-Linux篇

    版本控制工具Git工具快速入门-Linux篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.版本管理系统的介绍 1>.版本管理系统的特点 1.1>.自动生成备份: ...

  6. PostgreSQL 之 yum安装 postgis 插件

    版本说明: CentOS7.5 + PostgreSQL 10.5 参考资源: https://www.postgresql.org/download/linux/redhat/ http://dow ...

  7. Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装(转载)(1)

    Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装 一.引言 设计模式写完了,相当于重新学了一遍,每次学习都会有不同的感受,对设计模式的理解又加深了,理解的更加透彻了.还差一篇 ...

  8. Redis进阶实践之一VMWare Pro虚拟机安装和Linux系统的安装

    一.引言 设计模式写完了,相当于重新学了一遍,每次学习都会有不同的感受,对设计模式的理解又加深了,理解的更加透彻了.还差一篇关于设计模式的总结的文章了,写完这篇总结性的文章,设计模式的文章就暂时要告一 ...

  9. C语言-apache mod(模块开发)-采用apxs开发实战(centos7.2 linux篇)

    C语言-apache mod(模块开发)-采用apxs开发实战(centos7.2 linux篇) 名词解释:apxs apxs is a tool for building and installi ...

随机推荐

  1. Educational Codeforces Round 2 C. Make Palindrome 贪心

    C. Make Palindrome Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/600/pr ...

  2. 使用VS2012 开发SharePoint 2013 声明式的action(activity) 综合实例

    本文讲述使用VS2012 开发SharePoint 2013 声明式的action 综合实例. 需求同: http://blog.csdn.net/abrahamcheng/article/detai ...

  3. Crouton

    https://github.com/keyboardsurfer/Crouton https://github.com/GBouerat/Crouton https://github.com/ouy ...

  4. Java基础:Collection—List&Set

    List和Set: List可以将元素维护在特定的序列中.它的特点是有序,允许重复元素出现.最常见的List的实现类是:ArrayList. Set的特点是:无序,不保存重复元素.当尝试将重复的元素添 ...

  5. 合并js文件minify实例

    将min目录放入项目中后,js中引入方式是: <script type="text/javascript" src="__PUBLIC__/min/?b=publi ...

  6. MySQL · BUG分析 · Rename table 死锁分析

    http://mysql.taobao.org/monthly/2016/03/06/ 背景 InnoDB buffer pool中的page管理牵涉到两个链表,一个是lru链表,一个是flush 脏 ...

  7. 把json格式对象转成可提交字符串格式,会过滤掉函数 {a: {b: 3}, b: [1], c: "d"} -> a.b=3&b[0]=1&c=d

    var json = { name: "任务名称" , scoreRule: "", score: "", // 如果规则表达式不为空,则默 ...

  8. Undefined property: Illuminate\Database\Eloquent\Builder

    是因为在 $activity=Activity::where('center_id','=',$center->id)->where('Date','=',date("Y-m-d ...

  9. lisener在web.xml中设置

    /* * servlet监听器开发步骤: * 1.写一个类实现XXXListener接口(6个=3个容器+3个对容器中属性进行操作) * 2.在web.xml中配置<listener> - ...

  10. Sqlite和CoreData的区别

    使用方便性.实际上,一个成熟的工程中一定是对数据持久化进行了封装的,因此底层使用的到底是core data还是sqlite,不应该被业务逻辑开发者关心.因此,即使习惯写SQL查询的人,也应该避免在业务 ...