Search code examples
postgresqlopenstreetmappostgisgeoserverosm2pgsql

Import OSM file to PostGis on Windows10


can you help me with importing planet.osm file to my PostGist db? I am new in this and I found tutorials only for linux.

There are some commands, but I do not know how use it ... I will be grateful for some step by step tutorial. I'm using GeoServer if it is important information for us to help me. Thanks for advices.

edit: I used osm2pgsql -s -U postgres -d nameofdatabase name.osm but unsuccessful because I have error with no database found.


Solution

  • I used OGR2OGR to import osm data in pbf format on Windows (Windows 10, Posgres 9.6 with Postgis 2.3). You can use OGR2OGR from the "OSgeo42 shell", which comes with QGIS or you can get Osgeo4w separately here). The steps are something like this:

    • Create a new database: create database db_for_osm
    • Create Postgis extension in your db. In SQL create extension postgis
    • Now you can run OGR2OGR. Open the "OSGEO4W shell". This will open a command window with all the environment variables set. The command will be something like ogr2ogr -f PostgreSQL PG:"dbname='db_for_osm' host='localhost' port='5432' user='myuser' password='mypassword'" planet.osm.pbf

    My large upload took a couple of days to complete, so be prepared for this to take a long time - I suggest you do a test with a small region first - for the test I did for this answer I downloaded a city from Mapzen.