参考了草棚大佬的流程,基本流程一致但是版本更新之后有部分需要注意:
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;'
解决方法:
登录pgAdmin4 找到对应数据库 'postges'
右键CREATE EXTENSION
选择postgis即可,也可通过CMD命令行处理,原理一致。
处理结果如下: