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
转载自:https://blog.csdn.net/newtonsm/article/details/84964349