PostgreSQL+PostGIS+OpenStreeMap+GeoServer环境搭建

win7 64bit,搭了两天才成功,分享一下。

1.获取国内任意一个城市的OpenStreetMap数据的一种方法

参见获取国内任意一个城市的OpenStreetMap数据的一种方法

提示:下载的时候选择这种格式的才可以:china-latest.osm.bz2

2.安装配置 PostgreSQL+PostGIS参见下面链接。

OSM数据插入PostGIS数据库为GeoServer提供数据

在安装PostGIS时遇到的问题:我的PostgreSQL的版本是9.4,这里面检测出PostGIS的两个版本,一个是2.1.5,一个是2.1.7。

我最开始装的是2.1.7,但是发现根本没法建PostGIS类型的数据库,网上查了半天也没找到为什么,重新装也没解决,后来想到可能是版本问题就换的2.1.5,然后就可以了。

在做第五步:添加OSM数据到数据库 osm2pgsql
-U postgres -d osm -s -S ./default.style ./shanghai.osm
的时候出现了两个问题,查了很久

(1)no password supplied

解决办法:

在C:\Users\asus\AppData\Roaming\postgresql路径下有一个pgpass.conf文件,每个用户在登陆postgres并且保存密码后都会在该用户目录下保存一个pgpass.conf 文件,里面有该用户的密码

按照如下格式进行设置:hostname:port:database:username:password  

例如:localhost:5432:osm:postgres:123456

(2)也就是上面链接中提到的错误,create extension hstore;osm2pgsql
-U postgres -d osm -hstore -s -S ./default.style ./shanghai.osm
 “是错误的

解决办法:

命令应该是:osm2pgsql -U postgres -d osm -k -s -S ./default.style ./shanghai.osm

将上面的-hstore替换为-k,这样就OK了

3.把数据添加到GeoServer中并发布

同样参考第2个部分的链接的博客中下面的部分就OK了,这部分很顺利没有遇到问题。

转载自:https://blog.csdn.net/hyj_13/article/details/45130017

You may also like...