postGIS安装与shp文件的存储示范
自己装PostGIS已经有很多次了,由于没有记录,过一段时间就忘掉了。今天就写下本文记录。
前言:
PostGIS是关系对象型postgresql数据库的空间引擎。在安装PostGIS 前首先必须安装postgresql,然后在安装好的Application Stack Builder 中选择安装PostGIS组件。
一。安装
1.安装文件
下载Postgresql安装包,选择与自己操作系统相符的安装包。本文中用的postgresql ,Version9.2.3 win 64。
下载安装包:http://www.enterprisedb.com/products-services-training/pgdownload#windows
2.安装步骤
Step1:运行安装文件,设置安装目录
Step2:到图1时,设置超级用户的密码,默认用户名为:postgres
图1
Step 3:设置数据库使用的区域。如果本地使用可以默认。如图2所示。
图2
Step4:选择安装组件的位置,如图3所示,本文是本地安装选择,第二个。
图3
Step 5:安装postGIS组件,如图6所示。
图 6
Step 6:下一步,设置数据库登录的用户名和密码。如图7,下一步等待完成。
图 7
二。shapefile文件入库
1.PostGIS Shapefile Import/Export Manager工具导入
PostGIS提供了智能工具,方便快捷的将shapefile文件存入到数据库中。在入库之前,先得建立数据库。
Step:开始菜单—pgAdminIII,在pgAdminIII对话框中的数据库目录树中新建数据库。如图8所示
图 8
Step 2:设置新建数据库的属性。在属性页填写变量名和选择所有者,如图9所示。在定义页 选择模板和表空间。如果10所示。笔者在选择模板是没有选择template_postgis_20,在入库是总出现"没有匹配的指定名称和参数"错误。如果选择的字符编码为UTF-8,根据数据的中的编码不一样,也可能出现错误,但是可以在入库时候在做修改。
图9 图10
Step 3:经过前面两步已经建好了数据库,接下来的工作是将shapefile文件导入到刚建立的数据库中。点击开始中的PostGIS Shapefile Import/Export Manager,在图11所示的界面中选择,view connection details ,输入数据库连接方式,图12。点击Addfile,加载需要添加的shapefile文件。点击import按钮
图 11 图 12
step 4:在导入过程会遇到编码的错误,如图13。数据库采用了UTF-8,而导入的文件为其他编码,如图13,数据库为UTF-8,而文件为LATINI1,解决办法是点击Options,修改编码方式为LATINI1.修改完成后,在导入,成功后可以在pgAdminIII 中 目录下的数据表中看到导入的数据,如图14的数据表所示。
如图13 如图 14
2.使用命令行导入
使用命令行的到入shapefile文件有两个步骤。一是根据文件生成sql,二是:将sql文件到入到库中。
Step1:打开cmd,依次输入一下命令(根据自己的postsql 的安装目录)
d:
cd D:\Program Files\PostgreSQL\9.2\bin
shp2pgsql -s -4269 d:\Links.shp jmb>d:\dddd.sql // shp2 pgsql 为将shp 文件转换为pg(postgis)支持的sql, -s是设置 srid(Spatial Reference System Identifier)jmb为数据库名 ,在d盘下可以看到到处的dddd.sql 文件。图15
图15
tips: 查看诸如-s的意思,可以直接命令shp2pgsql,如图16所示
图16
Step 2:通过sql语句查询器入库,打开pgAdminIII,链接数据库,点击工具条上的sql命令,然后加载生成的sql,点击执行,如下图
图 17 图 18
tips: 也可以直接一步运用命令存到数据库中
总结:
网上关于这方面的资料很多。
扩展阅读:<<Post GIS In Action>>
作者:suwenjiang
出处:http://www.cnblogs.com/myyouthlife/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。