OSM地图本地发布(二)-----数据准备

一、准备工作

1.安装PostgreSQL+PostGIS,版本不限(推荐最新版本)安装教程:Windows上安装Linux上安装

2.osm2pgsql工具,下载地址

3.安装QGIS,方便查看数据,下载地址

二、具体步骤

1.windows安装osm2pgsql

下载地址:Index of /download/windows (osm2pgsql.org)

md_17163b33.png

windows版解压即用:

md_89be5f81.png

2.下载OSM数据

1.下载全国数据量太大,以台湾省为例;下载地址:http://download.geofabrik.de/asia.html,下载.osm.pbf格式数据。

md_b6d50e50.png

2.将下载后的数据放在osm2pgsql根目录下备用:

md_657f29de.png

3.打开Postgres并创建数据库

1.创建名为:taiwan数据库

md_189a0f69.png

2.运行sql给该数据库添加扩展:

CREATE EXTENSION postgis;
CREATE EXTENSION hstore;
md_ae71c6c9.png

4.osm2pgsql导入数据到postgres

1.为了避免输入密码报错:ERROR: Cannot detect file format for 'XXXXX'. Try using -r

将postgres安装目录里的文件pg_hba.conf(文件路径:...\PostgreSQL\版本号\data)里面的md5,下图所示的两个md5改为trust:

md_bd07ec78.png

2.在osm2pgsql根目录打开cmd,运行命令:

osm2pgsql -s -U postgres -H 127.0.0.1 -P 5432 -d taiwan --hstore --style default.style --tag-transform style.lua --cache 12000 taiwan-latest.osm.pbf

注意:-U 用户名 -W 密码 -d 数据库名,其他命名参考osm2pgsql常见命令

3.等待导入完成:
md_b88abba3.png

md_665f32ad.png

5.查看数据

1.打开taiwan数据库查看数据表:

md_fc7c0279.png
表名 说明
planet_osm_point 点类型地理数据表
planet_osm_line 线类型地理数据表
planet_osm_polygon 面类型地理数据表
planet_osm_roads 路线地理数据表

所有图层数据都在这四张表里面,nodes\rels\ways为导入过程生成的中间表,可以删除。

2.使用QGIS连接Postgres数据库查看数据

md_0c31447b.png

3.连接成功QGIS会显示四个图层:

md_d9bf35ad.png

4.添加图层查看数据:

planet_osm_line:

md_f9cfd5e2.png

planet_osm_point:

md_b2b55eef.png

planet_osm_polygon:

md_dd2a0513.png

planet_osm_roads:

md_afb28b9e.png

到此数据准备完成,后面将对数据进行查询生成不同的地图图层。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容