ich habe da mal eine Frage. Ich habe mir eine lokale Datenbank mit PostgreSQL installiert. Hierzu habe ich die sehr gute Anleitung von http://wiki.openstreetmap.org/wiki/User:Ajoessen verwendet. Als Übungs -osm Datei habe ich mir das Saarland ausgesucht.
Soweit so gut.
Was muss ich machen, um den Datenbestand zu aktualisieren? Ich arbeite unter WindowsXP.
Ich habe das Geofabrik Extrakt saarland.osm.bz2 verwendet.
Kann ich einfach meine Batchdatei nochmal aufführen mit den neuen OSM Datei, oder habe ich dann die Daten doppelt drin?
hi,
ich hab früher auch mit osm2pgsql geschafft und bin mir zu 99% sicher, dass -CREATE die db neu aufsetz - im gegensatz zu -APPEND.
das saarland ist ja relativ klein (datenmässig). mach halt einfach nen test.
Ich habe es mal ausprobiert und es funktioniert. Zumindest habe ich keine Fehlermeldung erhalten. Auch das weitere extrahieren von Daten (z.b. nur highway mit osmosis) hat funktioniert.
ich glaube auch, dass das nen Fehler produziert. Die Antwort auf die Frage, wie man Daten aktualisert ohne jeden Tag stundenlang Diffs einzuspielen, würde mich auch interessieren. Momentan mache ich es so
restart postgres:
sudo /etc/init.d/postgresql restart
mit “psql” Postgres Prompt aufrufen und alte Datenbank löschen
drop database osm;
\q
createdb -E utf8 osm
cat /usr/share/postgresql/9.0/contrib/postgis-1.5/postgis.sql | psql -d osm
cat /usr/share/postgresql/9.0/contrib/postgis-1.5/spatial_ref_sys.sql | psql -d osm
osm2pgsql -l -d osm -p osm -s -C 2200 file_name.osm[.bz]
(cat /usr/share/postgresql/9.0/contrib/_int.sql | psql -d osm) → interay Modul für Diffs
Postprocessing:
cat /home/thomas/mapserver-utils-read-only/postprocess.sql | psql -d osm