OSM数据导入PostgreSQL常见问题解决方法

1,577 阅读1分钟

参考了草棚大佬的流程,基本流程一致但是版本更新之后有部分需要注意:

1.postgis最新版本3.1 仅支持 postgresql 9-12 版本 不支持13版本,10.10亲测可用。

2.osm2pgsql在新版本中不需要再移动defualt文件,也不再有x64文件夹,直接调用即可。

osm2pgsql -U postgres -d postgres -P 5432 -C 12000 -S "default.style 文件路径" china-latest.osm.pbf

3.加载postgis对象和函数定义postgis.sql与加载EPSG坐标系统定义spatial_ref_sys.sql

 psql -U postgres -d osm -f "postgis.sql文件路径"
 
 psql -U postgres -d osm -f "spatial_ref_sys.sql文件路径"

二者都位于 根目录\share\contrib\postgis-(版本) 下

4.若有报错如下:

ERROR: The postgis extension is not enabled on the database 'osm'. 
Are you using the correct database? Enable with 'CREATE EXTENSION postgis;'

image.png

解决方法:

登录pgAdmin4 找到对应数据库 'postges'

image.png

右键CREATE EXTENSION

image.png

选择postgis即可,也可通过CMD命令行处理,原理一致。

处理结果如下:

image.png

image.png