PostgreSQL+PostGIS+GeoServer学习笔记

1.安装java SE

2.安装PostgreSQL+PostGIS

安装包下载地址:http://www.enterprisedb.com/products-services-training/pgdownload#windows。根据自己电脑的实际情况下载相应的安装包。安装过程很简单,一直点next就行,要注意的有以下几点:

——最最重要的一点!!!关掉360,万恶的360!!!

——安装路径不要有空格;

——中间有让你输入超级用户postgres的密码,这个密码要记住,后面创建及配置数据库的时候会用到;

——启动Stack Builder(如下图),安装PostGIS;

issue:安装程序运行到99%最后出现了一个未知错误,最后改用最新版postgresql-11.1-1-windows-x64才得以解决。

3.安装GeoServer geoserver-2.14.1

https://sourceforge.net/projects/geoserver/files/GeoServer/2.14.1/geoserver-2.14.1.exe/download

注意先安装java

E:\ProgramPostgreSQL\GeoServer 2.14.1\bin里有个startup.bat可以启动geoserver

打开  http://localhost:8080/geoserver/web/  右上角登陆 默认账号admin 密码geoserver

4.使用osmosis向PostgreSQL导入OpenStreetMap数据

      4.1下载

下载地图数据,如:https://download.geofabrik.de/asia/china-latest.osm.pbf

osmosis下载地址:https://wiki.openstreetmap.org/wiki/Osmosis/Quick_Install_(Windows)

解压缩后手动运行bat文件,如"C:\Program Files (x86)\osmosis\bin\osmosis.bat"

教程: https://wiki.openstreetmap.org/wiki/Osmosis/PostGIS_Setup

 

      4.2新建一个数据库

        打开管理后台E:\ProgramPostgreSQL\11\pgAdmin 4\bin\pgAdmin4.exe  使用模板创建一个新数据库, 如:chinaosm

        参考:https://blog.csdn.net/vili_sky/article/details/78771276 

      4.3为数据库创建Schema(模式)

          使用命令 E:\ProgramPostgreSQL\11\bin>psql -U postgres -d chinaosm -f E:\ProgramPostgreSQL\osmosis\script\pgsimple_schema_0.6.sql

      4.4导入OSM数据至PostgreSQL数据库 

使用命令:

E:\ProgramPostgreSQL\osmosis\bin>osmosis --read-pbf file=E:\ProgramPostgreSQL\china-latest.osm.pbf --write-pgsimp database=chinaosm user="postgres" password="————" host="localhost"

注意:--read-pbf 中的pdf对应.pbf格式的文件,-xml对应.osm格式的文件,具体参考:https://wiki.openstreetmap.org/wiki/Osmosis/PostGIS_Setup

--write-pgsimp 中的-pgsimp对应pgsimple_schema_0.6.sql这类的数据表模式,模式不对应则一直出现数据库模式版本不对应的问题:The database schema version of 5 does not match the expected version of 6.

导入数据会花费比较久的时间,信息: Pipeline executing, waiting for completion.

等我导入完成再继续写

………………

信息: Total execution time: 856868 milliseconds.

一个20mb的文件用了14分钟。。。

You can either use write pgsql or write pgsql dump. This example uses write pgsql

osmosis --read-pbf extract.osm.pbf --log-progress --write-pgsql database=pgsnapshot 

这样貌似可以看进度

另外更常用的办法是osm2pgsql:

E:\ProgramPostgreSQL\osm2pgsql\x64>osm2pgsql -d china -U postgres -P 5432 -C 12000 -S "E:\ProgramPostgreSQL\osm2pgsql\default.style" E:\ProgramPostgreSQL\china-latest.osm.pbf

5.配置GeoServer

参考:https://www.cnblogs.com/kkyyhh96/p/6379515.html

打开  http://localhost:8080/geoserver/web/

https://blog.csdn.net/cao812755156/article/details/80919521  获取OSM数据,并通过osm2pgsql导入postgreSQL数据库

下一步进行安装 GeoServer 并绑定数据。

下载OSM数据,使用 osm2pgsql 导入至PostgreSQL(PostGIS),安装GeoServer并绑定数据(二)

生产环境部署

https://www.aliyun.com/zixun/content/6_18_2074935.html 一步步DIY: OSM-Web服务器(一) PostgreSql 配置以及osm2pgsql原始PBF数据导入

6.Geoserver样式(SLD)配置

http://blog.sciencenet.cn/blog-427394-586457.html

SLD's which can be used to style the OSM data in GeoServer

https://github.com/FlorentDotMe/archives/tree/master/2013.03.23-OSM-Styles-for-GeoServer

https://github.com/mitchelljj/openstreetmap-sld

下面这篇文章讲了怎么把OSM的4个图层分为更细的图层,并分别配置SLD样式

https://www.cnblogs.com/think8848/p/6013939.html

--------------------- 
参考文章:

GIS开发者网:https://www.giserdqy.com/

PostgreSQL+PostGIS安装以及用Osmosis导入openstreetmap地图数据

作者:bobantangzlt 
来源:CSDN 
原文:https://blog.csdn.net/bobantangzlt/article/details/17091625 

 

导入OSM数据至PostgreSQL数据库
作者:vili_sky 
来源:CSDN 
原文:https://blog.csdn.net/vili_sky/article/details/78771276 

搭建简易Web GIS网站:使用GeoServer+PostgreSQL+PostGIS+OpenLayers3
作者:天靖居士
来源:cnblogs 
原文:https://www.cnblogs.com/kkyyhh96/p/6379515.html

你可能感兴趣的:(GIS)