x

Import mit osm2pgsql funktioniert nicht


  1. Import mit osm2pgsql funktioniert nicht · borish-osm (Gast) · 22.02.2015 16:58 · [flux]

    Hallo,

    ich habe eine PostGIS-DB mit folgenden Namen:

    ␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣␣List␣of␣databases
    Name␣␣␣␣|␣␣Owner␣␣␣|␣Encoding␣|␣␣␣Collate␣␣␣|␣␣␣␣Ctype␣␣␣␣|␣␣␣Access␣privileges
    -----------+----------+----------+-------------+-------------+-----------------------
    gis␣␣␣␣␣␣␣|␣gisuser␣␣|␣UTF8␣␣␣␣␣|␣en_US.UTF-8␣|␣en_US.UTF-8␣|
    

    Der Import mit

    ~$␣osm2pgsql␣-U␣gisuser␣-d␣gis␣--slim␣Downloads/canary-islands-latest.osm.pbf
    

    liefert

    osm2pgsql␣SVN␣version␣0.82.0␣(64bit␣id␣space)
    
    Using␣projection␣SRS␣900913␣(Spherical␣Mercator)
    Setting␣up␣table:␣planet_osm_point
    DROP␣TABLE␣IF␣EXISTS␣planet_osm_point␣failed:␣ERROR:␣␣must␣be␣owner␣of␣relation␣planet_osm_point
    
    Error␣occurred,␣cleaning␣up
    

    In der PostGIS-DB ist bereits eine Karte gespeichert, die ich auf gleiche Weise importiert habe und die mit obigem Befehl überschrieben werden sollte.


    • Re: Import mit osm2pgsql funktioniert nicht · Numberfive (Gast) · 22.02.2015 17:07 · [flux]

      Für mich liest sich das so als würde die Table planet_osm_point nicht dem gisuser gehören. und somit der volle zugriff fehlen.
      http://gis.stackexchange.com/questions/ … ion-denied
      das sieht so ähnhlich aus vielleicht hilft es.


    • Re: Import mit osm2pgsql funktioniert nicht · borish-osm (Gast) · 22.02.2015 19:26 · [flux]

      Diesen Link habe ich auch gelesen, aber es hat mir nicht weiter geholfen. Kann es denn sein, dass eine Table einen anderen Owner hat als die Datenbank?


    • Re: Import mit osm2pgsql funktioniert nicht · poempelfox_forum (Gast) · 22.02.2015 23:20 · [flux]

      Ja, das kann sein, z.B. dann wenn du in der Vergangenheit mit einem Nutzer mit Adminrechten an der Datenbank rumgefummelt hast. Vermutlich hast du die existierende Datenbank damals mit einem anderen User der aber Adminrechte hatte importiert.

      \c␣gis␣;␣\dp
      

      wuerde dir zeigen wem das Ding gehoert.
      Nachdem du aber eh neu importieren willst, loesch doch einfach alles was in der Datenbank ist und erstell sie neu, dann schlaegt osm2pgsql auch nicht mehr beim Versuch auf, das zu tun...


    • Re: Import mit osm2pgsql funktioniert nicht · wambacher (Gast) · 23.02.2015 00:24 · [flux]

      poempelfox_forum wrote:

      Ja, das kann sein, z.B. dann wenn du in der Vergangenheit mit einem Nutzer mit Adminrechten an der Datenbank rumgefummelt hast. Vermutlich hast du die existierende Datenbank damals mit einem anderen User der aber Adminrechte hatte importiert.

      \c␣gis␣;␣\dp
      

      wuerde dir zeigen wem das Ding gehoert.
      Nachdem du aber eh neu importieren willst, loesch doch einfach alles was in der Datenbank ist und erstell sie neu, dann schlaegt osm2pgsql auch nicht mehr beim Versuch auf, das zu tun...

      alles ist unnötig: alles was mit planet_osm_ anfängt reicht.


    • Re: Import mit osm2pgsql funktioniert nicht · borish-osm (Gast) · 23.02.2015 10:58 · [flux]

      Weil \dp mir keine neuen Erkenntnisse geliefert hat, habe ich die DB gelöscht und wie in http://wiki.openstreetmap.org/wiki/PostGIS/Installation beschrieben neu angelegt. Mit Ubuntu 14.04 bekomme ich nach

      sudo␣-u␣postgres␣psql␣-d␣gis␣-f␣/usr/share/postgresql/9.3/contrib/postgis-2.1/postgis.sql
      sudo␣-u␣postgres␣psql␣-d␣gis␣-f␣/usr/share/postgresql/9.3/contrib/postgis-2.1/spatial_ref_sys.sql
      sudo␣-u␣postgres␣psql␣-d␣gis␣-f␣/usr/share/postgresql/9.3/contrib/postgis-2.1/postgis_comments.sql
      

      Fehlermeldungen:

      psql:/usr/share/postgresql/9.3/contrib/postgis-2.1/spatial_ref_sys.sql:16229:␣ERROR:␣␣current␣transaction␣is␣aborted,␣commands␣ignored␣until␣end␣of␣transaction␣block
      

      Wenn ich danach trotzdem versuche, das pbf mit osm2pgsql zu importieren, reagiert das System nicht mehr.

      Wenn ich Tilemill starte, wird mir die Spanien-Karte gezeigt, die vorher in der DB war und eigentlich gelöscht sein sollte.


    • Re: Import mit osm2pgsql funktioniert nicht · wambacher (Gast) · 23.02.2015 11:36 · [flux]

      borish-osm wrote:

      Wenn ich Tilemill starte, wird mir die Spanien-Karte gezeigt, die vorher in der DB war und eigentlich gelöscht sein sollte.

      Tja, wenn du nur die Tabellen gelöscht hättest, die ich erwähnt hatte, hättest du diese - selbst gemachten - Probleme nicht.

      Möglicherweise hast du ja jetzt auch noch verschiedenen Datenbanken gleichzeitig am laufen - nächster logischer Schritt deiner Arbeitsweise wäre die Neuinstallation des Rechners 😉

      Verschaffe dir einen Überblick über die aktuelle Lage z.B. mit PGADMIN3 oder den Info-Kommandos in psql (\d, \l und ähnliches) und mach dann weiter.

      Gruss
      walter


    • Re: Import mit osm2pgsql funktioniert nicht · borish-osm (Gast) · 23.02.2015 12:09 · [flux]

      Wenn ich gis mit dropdb lösche, ist die DB immernoch vorhanden:

      postgres=#␣dropdb␣gis
      postgres-#␣\l
      List␣of␣databases
      Name␣␣␣␣|␣␣Owner␣␣␣|␣Encoding␣|␣␣␣Collate␣␣␣|␣␣␣␣Ctype␣␣␣␣|␣␣␣Access␣privileges
      -----------+----------+----------+-------------+-------------+-----------------------
      gis␣␣␣␣␣␣␣|␣gisuser␣␣|␣UTF8␣␣␣␣␣|␣en_US.UTF-8␣|␣en_US.UTF-8␣|
      postgres␣␣|␣postgres␣|␣UTF8␣␣␣␣␣|␣en_US.UTF-8␣|␣en_US.UTF-8␣|
      template0␣|␣postgres␣|␣UTF8␣␣␣␣␣|␣en_US.UTF-8␣|␣en_US.UTF-8␣|␣=c/postgres␣␣␣␣␣␣␣␣␣␣+
      |␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣␣␣␣|␣postgres=CTc/postgres
      template1␣|␣postgres␣|␣UTF8␣␣␣␣␣|␣en_US.UTF-8␣|␣en_US.UTF-8␣|␣=c/postgres␣␣␣␣␣␣␣␣␣␣+
      |␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣␣␣␣|␣postgres=CTc/postgres
      (4␣rows)
      

      Das ist sehr seltsam.


    • Re: Import mit osm2pgsql funktioniert nicht · wambacher (Gast) · 23.02.2015 12:32 · [flux]

      borish-osm wrote:

      Wenn ich gis mit dropdb lösche, ist die DB immernoch vorhanden:

      postgres=#␣dropdb␣gis
      postgres-#␣\l
      List␣of␣databases
      Name␣␣␣␣|␣␣Owner␣␣␣|␣Encoding␣|␣␣␣Collate␣␣␣|␣␣␣␣Ctype␣␣␣␣|␣␣␣Access␣privileges
      -----------+----------+----------+-------------+-------------+-----------------------
      gis␣␣␣␣␣␣␣|␣gisuser␣␣|␣UTF8␣␣␣␣␣|␣en_US.UTF-8␣|␣en_US.UTF-8␣|
      postgres␣␣|␣postgres␣|␣UTF8␣␣␣␣␣|␣en_US.UTF-8␣|␣en_US.UTF-8␣|
      template0␣|␣postgres␣|␣UTF8␣␣␣␣␣|␣en_US.UTF-8␣|␣en_US.UTF-8␣|␣=c/postgres␣␣␣␣␣␣␣␣␣␣+
      |␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣␣␣␣|␣postgres=CTc/postgres
      template1␣|␣postgres␣|␣UTF8␣␣␣␣␣|␣en_US.UTF-8␣|␣en_US.UTF-8␣|␣=c/postgres␣␣␣␣␣␣␣␣␣␣+
      |␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣␣␣␣|␣␣␣␣␣␣␣␣␣␣␣␣␣|␣postgres=CTc/postgres
      (4␣rows)
      

      Das ist sehr seltsam.

      nein, das ist nicht seltsam!
      du bist als postgres angemeldet und willst eine db, die gis "gehört" löschen. das klappt nur, wenn postgres sql-admin ist, aber ob das so ist, kannst nur du wissen.


    • Re: Import mit osm2pgsql funktioniert nicht · borish-osm (Gast) · 23.02.2015 12:51 · [flux]

      Wenn ich

      dropdb␣-U␣gisuser␣gis
      

      verwende, wird gis auch nicht gelöscht. Außerdem sollte postgres als Superuser doch alles dürfen? Wie lösche ich gis richtig?


    • Re: Import mit osm2pgsql funktioniert nicht · wambacher (Gast) · 23.02.2015 12:55 · [flux]

      borish-osm wrote:

      Wenn ich

      dropdb␣-U␣gisuser␣gis
      

      verwende, wird gis auch nicht gelöscht. Außerdem sollte postgres als Superuser doch alles dürfen? Wie lösche ich gis richtig?

      hast du vorhin in psql "dropdb gis" oder "dropdb gis;" eingegeben?

      möchte das ungerne ausprobieren.

      Der Befehl in psql lautet "drop database gis;"


    • Re: Import mit osm2pgsql funktioniert nicht · borish-osm (Gast) · 23.02.2015 13:23 · [flux]

      Ich find keine Dokumentation dazu, wie man psql von der Kommandozeile bedient. Ich halte mich daher an das oben verlinkte Wiki.

      boris@iti27:~/GPS/bin$ sudo -u postgres dropdb gis
      boris@iti27:~/GPS/bin$ sudo -u postgres createdb --encoding=UTF8 --owner=gisuser gis
      boris@iti27:~/GPS/bin$ psql --username=gisuser --dbname=gis --command="\d"
      No relations found.

      Im Wiki steht zu dem letzten Befehl: "After the activation, the following command should list the tables geometry_columns and spatial_ref_sys". Das ist aber nicht der Fall. Ist hier schon etwas fehlgeschlagen?


    • Re: Import mit osm2pgsql funktioniert nicht · gormo (Gast) · 23.02.2015 13:30 · [flux]

      semikolons!

      postgres=#␣dropdb␣gis
      postgres-#␣\l
      

      Soweit ich mich erinnere zeigt das "-", das du quasi im kontinuierlichen Modus bist, das Kommando also noch weiter geht. Versuch mal

      dropdb␣gis;
      

    • Re: Import mit osm2pgsql funktioniert nicht · borish-osm (Gast) · 23.02.2015 13:50 · [flux]

      Mit

      sudo␣-u␣postgres␣dropdb␣gis
      

      wird die DB gelöscht, wie mir \l anzeigt. Aber nach dem Anlegen (s. #12) und dem Befehl

      psql␣--username=gisuser␣--dbname=gis␣--command="\d"
      

      erhalte ich "No relations found." Zeigt das einen Fehler an?


    • Re: Import mit osm2pgsql funktioniert nicht · wambacher (Gast) · 23.02.2015 14:13 · [flux]

      borish-osm wrote:

      Ich find keine Dokumentation dazu, wie man psql von der Kommandozeile bedient. Ich halte mich daher an das oben verlinkte Wiki.

      man psql

      und in plsql: \?

      solange du diese Grundlagen nicht drin hast bzw genau das eingibt, was wir dir sagen, ist für mich erst mal Funkstille.

      Knatschige Grüsse
      walter


    • Re: Import mit osm2pgsql funktioniert nicht · borish-osm (Gast) · 23.02.2015 14:26 · [flux]

      Ob ich meine DB über sudo -u postgres <Befehl> steuere, wie im Wiki angegeben, oder mit der psql-Kommandozeile, sollte doch egal sein.

      Ich lese gerade OSM-Daten neu ein. Möglicherweise war die .osm-Datei fehlerhaft. Die DB funktioniert jetzt wieder.