You are not logged in.

#1 2013-07-10 13:18:58

Lübeck
Member
Registered: 2009-02-17
Posts: 2,655

Hilfe bei Postgis Einrichtung

Moin !

ich bin dabei eine Postgis aufzusetzen bei Win7 64 und habe folgendes installiert:


PostgreSQL 9.2 http://www.enterprisedb.com/products-se … ad#windows
PostGIS 2.0.3 für 9.2 http://postgis.net/windows_downloads

Weiter habe ich mich von http://wiki.openstreetmap.org/wiki/User … en/Postgis leiten lassen und nun bin ich bei dem Punkt

Datenbank für osmosis "snapshot-Schema" anlegen angekommen.

Ich habe das Script meinen Angaben entsprechend angelegt und bekomme schon für die Zeile

C:\Programme\PostgreSQL\9.2\bin\createdb -U postgres -E UTF8 -O osmuser osmosisdb

Die Meldung....

Das System kann den angegebenen Pfad nicht finden.

Die C:\Programme\PostgreSQL\9.2\bin\createdb.exe ist aber verfügbar!!!

Hat einer eine Idee ? Gibt es etwas ich prüfen kann ?

Gruß Jan :-)


Mi A1 mit Android 9 PC: Win10

Offline

#2 2013-07-10 15:32:39

chris66
Member
From: Germany
Registered: 2009-05-24
Posts: 9,747

Re: Hilfe bei Postgis Einrichtung

sicher? bei meinem W7 heisst der Folder 'program files'.


Mapper aus dem Münsterland/NRW. Nicht auf fakebook.

Offline

#3 2013-07-10 16:12:35

Lübeck
Member
Registered: 2009-02-17
Posts: 2,655

Re: Hilfe bei Postgis Einrichtung

hi !

irgendwie war da wohl was falsch gelaufen - jetzt hat es funktioniert und bei ALLE Passwortabfragen habe ich dasselbe eingeben.

Da ich das Batch mehrmals schon habe durchlaufen lassen kommt es zu Fehlermeldungen - logisch.


D:\GIS\PostgreSQL>set osmosispath=D:\DATEN\JAN\openstreetmap\osmosis

D:\GIS\PostgreSQL>set version=9.2

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\createdb" -U postgres -E
UTF8 -O osmuser osmosisdb
Passwort:
createdb: Erzeugen der Datenbank ist fehlgeschlagen: FEHLER:  Datenbank »osmosi
sdb« existiert bereits

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\createlang" -U postgres p
lpgsql osmosisdb
Passwort:
createlang: Sprache »plpgsql« ist bereits in Datenbank »osmosisdb« installiert

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\psql" -U postgres -d osmo
sisdb -f "C:\program files\PostgreSQL\9.2\share\contrib\postgis-1.5\postgis.sql"

Passwort für Benutzer postgres:
C:/program files/PostgreSQL/9.2/share/contrib/postgis-1.5/postgis.sql: No such f
ile or directory

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\psql" -U postgres -d osmo
sisdb -f "C:\program files\PostgreSQL\9.2\share\contrib\postgis-1.5\spatial_ref_
sys.sql"
Passwort für Benutzer postgres:
C:/program files/PostgreSQL/9.2/share/contrib/postgis-1.5/spatial_ref_sys.sql: N
o such file or directory

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\psql" -U postgres -d osmo
sisdb -f "C:\program files\PostgreSQL\9.2\share\contrib\_int.sql"
Passwort für Benutzer postgres:
C:/program files/PostgreSQL/9.2/share/contrib/_int.sql: No such file or director
y

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\psql" -U postgres -d osmo
sisdb -f "C:\program files\PostgreSQL\9.2\share\contrib\hstore.sql"
Passwort für Benutzer postgres:
C:/program files/PostgreSQL/9.2/share/contrib/hstore.sql: No such file or direct
ory

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\psql" -U postgres -d osmo
sisdb -f "D:\DATEN\JAN\openstreetmap\osmosis\script\pgsql_snapshot_schema_0.6.sq
l"
Passwort für Benutzer postgres:
D:/DATEN/JAN/openstreetmap/osmosis/script/pgsql_snapshot_schema_0.6.sql: No such
file or directory

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\psql" -U postgres -d osmo
sisdb -f "D:\DATEN\JAN\openstreetmap\osmosis\script\pgsql_snapshot_schema_0.6_ac
tion.sql"
Passwort für Benutzer postgres:
D:/DATEN/JAN/openstreetmap/osmosis/script/pgsql_snapshot_schema_0.6_action.sql:
No such file or directory

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\psql" -U postgres -d osmo
sisdb -f "D:\DATEN\JAN\openstreetmap\osmosis\script\pgsql_snapshot_schema_0.6_bb
ox.sql"
Passwort für Benutzer postgres:
D:/DATEN/JAN/openstreetmap/osmosis/script/pgsql_snapshot_schema_0.6_bbox.sql: No
such file or directory

D:\GIS\PostgreSQL>"C:\program files\PostgreSQL\9.2\bin\psql" -U postgres -d osmo
sisdb -f "D:\DATEN\JAN\openstreetmap\osmosis\script\pgsql_snapshot_schema_0.6_li
nestring.sql"
Passwort für Benutzer postgres:
D:/DATEN/JAN/openstreetmap/osmosis/script/pgsql_snapshot_schema_0.6_linestring.s
ql: No such file or directory

D:\GIS\PostgreSQL>pause
Drücken Sie eine beliebige Taste . . .

No such folder ist logisch bei den Ausdrucken die oben im Protokoll stehen - in dem Batch steht aber z.b. für

%osmosispath%\script\pgsql_snapshot_schema_0.6.sql

Im Protokoll sind die Slashes anderes herum.

Abgesehen davon ist C:\Program Files\PostgreSQL\9.2\share\contrib bei mir LEER !!!

Eine Idee ?

Gruß Jan :-)


Mi A1 mit Android 9 PC: Win10

Offline

#4 2013-07-10 17:18:40

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,489
Website

Re: Hilfe bei Postgis Einrichtung

Lübeck wrote:

Eine Idee ?

Viele wink

erst mal Gratulation, dass du (endlich) mit Postgresql/Postgis loslegst. Aber du hast ja selber mal geschrieben, dass du Zeit dafür brauchst.

Was mir so auffällt:

- wilst du wirklich eine DB nach dem Snapshot-Schema anlegen?

Ich frage nur zu deiner Sicherheit, da gefühlte 95% aller OSM-Postgresql/PostGIS-DBs mit dem Simple-Schema und osm2pgsql &co angelegt werden.
"Meine" Planet-DB ist auch Snapshot und wird mit osmosis "gefüttert" und aktuell gehalten. Ich nutze die als Quelle für meine Auswertungen und Online-Projekte (Missing Residentials und demnächst PLZ 2.0). Ich kann damit aber nicht rendern und routen. Also denk noch mal kurz drüber nach.

- Postgresql 9.2 ist ok; ich fahre 9.1 und drücke mich noch ein wenig vor dem Upgrade.

- PostGIS 1.5 ist ein absolutes NOGO - total veraltet. 2.0 ist die aktuelle Version.

- du benutzt total veraltete Sekundärliteratur von Anfang 2012 (sorry André). Sowas sollte man schon beim Hersteller nachlesen.

Ich erkläre mir einige deiner Probleme dadurch - plus Windows als Platform, kann dir aber wegen Windows nicht weiter helfen.

Gruss
walter

Last edited by wambacher (2013-07-10 17:19:12)

Offline

#5 2013-07-10 19:34:26

Lübeck
Member
Registered: 2009-02-17
Posts: 2,655

Re: Hilfe bei Postgis Einrichtung

Hi !

mache Dir nicht zuviel Hoffnung - primär möchte ich das Nutzen um Papierkarten unter QGIS zu erstellen und der Macher des Lübecker Fahrradstadtplan hat mir davon vorgeschwärmt und benutzt diese Konstellation. Der arbeitet allerdings auch unter LINUX. Mir steht aber primär nur Win zur Verfügung.

Dann muss ich mich mal auf die Suche nach entsprechender Literatur machen.

Gruß Jan :-)


Mi A1 mit Android 9 PC: Win10

Offline

#6 2013-07-10 20:04:20

viw
Member
Registered: 2010-05-15
Posts: 2,623

Re: Hilfe bei Postgis Einrichtung

Lübeck wrote:

Hi !

mache Dir nicht zuviel Hoffnung - primär möchte ich das Nutzen um Papierkarten unter QGIS zu erstellen und der Macher des Lübecker Fahrradstadtplan hat mir davon vorgeschwärmt und benutzt diese Konstellation.

Frage ihn lieber nochmal welches Datenbankshema er verwendet. Ich persönlich bevorzuge auch für die Zusammenarbeit mit Qgis lieber das osm2pgsl shema. Das hat den angenehmen Vorteil das Flächen bereits flächen sind und Linien schon Linien. In der OSM DB gibt es das so nämlich nicht! Darum warnt wambacher ja so eindringlich davor. Geometrien werden erst durch osm2pgsql angelegt vorher sind es nur Datensätze.

Offline

#7 2013-07-10 20:46:51

Osmonav
Member
Registered: 2013-05-19
Posts: 33

Re: Hilfe bei Postgis Einrichtung

Hi,
er verwendet osmosis. Warum? Weil man da nicht bevormundet wird. Was ich überhaupt nicht ausstehen kann, ist ein Ausfiltern von irgendwelchen Datentypen, und das passiert, soweit ich es gelesen habe, bei osm2pgsql. Im übrigen ist es ein Gerücht, dass osmosis keine Linien aufstellt. Alle Linien sind komplett dabei. Geschlossene Polygone eben mit posgis in einer Tabelle einzuordnen dürfte nach etwas Lesen kein Problem darstellen.

Die Multipolygone sind zugegeben etwas komplizierter, aber mit etwas Probieren bekommt man auch das hin. Die Dokumentationen von postgresql, postgis und qgis sind hervorragend. Es gibt nicht viele Projekte mit so guter Dokumentation.

Es gibt übrigens, das habe ich auch gesagt, osm2postgresql. Man achte auf die nicht abgekürzte Schreibweise. Das Script stellt bereits vorgefertigte Tabellen zu Verfügung. Damit hatte ich angefangen, später habe ich es dann durch eigene Scripte ersetzt.

Ein Unterschied: Unter Linux steht hstore zur Verfügung, der zwar mit qgis nicht nutzbar ist, aber jederzeit über Scripte die Erstellung von weiteren Tabellen, Spalten oder Werten ermöglicht, die dann von qgis genutzt werden können. Ich vermute, dass unter Windows dafür ein Textfeld genutzt wird, da hstore unter Windows nicht laufen soll. Das habe ich aber selbst noch nicht getestet.

Gruß, Osmonav

Offline

#8 2013-07-10 21:10:50

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,489
Website

Re: Hilfe bei Postgis Einrichtung

Osmonav wrote:

Hi,
er verwendet osmosis. Warum? Weil man da nicht bevormundet wird. Was ich überhaupt nicht ausstehen kann, ist ein Ausfiltern von irgendwelchen Datentypen, und das passiert, soweit ich es gelesen habe, bei osm2pgsql.

Das war ja vor ca 3 Jahren für mich der Grund, die Finger von osm2pgsql zu lassen. Andauernd fehlten Werte, weil das Filter die netterweise sofort rausgeschmissen hat ("Brauchst du eh nicht"). Was ich haben wollte, war eine DB wo alles drinsteht und ICH entscheide was wichtig ist. Klar, man kann das Import-Schema erweitern und die DB neu aufsetzen - aber beim Planet macht das wirklich keinen Spass mehr.
Daß dann manche Sachen nicht so einfach sind, war mir klar, aber meine Freiheit war mir lieber.
Es gibt hier sogar Kollegen, die zweigleisig fahren: Eine DB zum Rendern/Routen und eine für speziellere Sachen.

Ein Unterschied: Unter Linux steht hstore zur Verfügung, der zwar mit qgis nicht nutzbar ist, aber jederzeit über Scripte die Erstellung von weiteren Tabellen, Spalten oder Werten ermöglicht, die dann von qgis genutzt werden können. Ich vermute, dass unter Windows dafür ein Textfeld genutzt wird, da hstore unter Windows nicht laufen soll. Das habe ich aber selbst noch nicht getestet.

Eine OSM-DB ohne hstore wäre für mich unzumutbar. Allerdings habe auch ich keine  WIN-Erfahrung damit.

Bin mal gespannt, was aus dem Projekt wird.

Gruss
walter

Last edited by wambacher (2013-07-10 21:12:06)

Offline

#9 2013-07-11 05:51:40

viw
Member
Registered: 2010-05-15
Posts: 2,623

Re: Hilfe bei Postgis Einrichtung

Welche Tags schmeißt osm2pgsql raus, wenn ihr hstore habt? Ich hoffe Euch fällt bei der Behauptung was gutes ein.
Ja man kann jederzeit das importschema so anpassen wie man es gerne hätte. Das dies vielleicht beim Planeten keine gute Idee ist, steht auf einem anderen Blatt. Wenn ich mir jeodch vorstelle wie ich aus alle Multipolygonen und Routen erstmal vernüftige Strukturen machen muss, bevor das auch nur angezigt werden kann, finde ich den Weg über osm2pgsql für die Anzeige von xy in Qgis nicht nur bequemer sondern erheblich schneller.
und spätestens bei allen Verwaltungsgrenzen und Landuses über Deutschland wird es denn bei der Anzeige auch eine performancefrage für den Server, wenn er das onthefly berechnen soll, oder?

Offline

#10 2013-07-11 08:37:46

mvollmer
Member
Registered: 2012-01-03
Posts: 33

Re: Hilfe bei Postgis Einrichtung

Schau dir mal an ob du PostGIS richtig installiert hast.

Du schreibst oben

in den Skripten steht aber 1.5

Passwort für Benutzer postgres:
C:/program files/PostgreSQL/9.2/share/contrib/postgis-1.5/postgis.sql: No such file or directory

Ein Unterschied: Unter Linux steht hstore zur Verfügung, der zwar mit qgis nicht nutzbar ist, aber jederzeit über Scripte die Erstellung von weiteren Tabellen, Spalten oder Werten ermöglicht, die dann von qgis genutzt werden können. Ich vermute, dass unter Windows dafür ein Textfeld genutzt wird, da hstore unter Windows nicht laufen soll. Das habe ich aber selbst noch nicht getestet.

Warum sollte hstore unter Windows nicht verfügbar sein?`Es ist als Erweiterung in der PostgreSQL Datenbank zu installieren und in osm2pgsql gibt es einen paramter --hstore

Offline

#11 2013-07-11 08:43:08

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,489
Website

Re: Hilfe bei Postgis Einrichtung

viw wrote:

Welche Tags schmeißt osm2pgsql raus, wenn ihr hstore habt? Ich hoffe Euch fällt bei der Behauptung was gutes ein.

ok, gewonnen wink Ich glaube, dass es zu der Zeit als meine Entscheidung gefallen ist, hstore noch nicht das Thema war oder ich hab das damals (2009/2010) übersehen.

Offen und für Jan mMn relevant ist: "geht Hstore unter Windows"? Ich bin und bleibe der Meinung, dass eine OSM-DB ohne hstore Schrott ist und begrüße es, dass osm2pgsql hstore unterstützt.

Wenn ich mir jeodch vorstelle wie ich aus alle Multipolygonen und Routen erstmal vernüftige Strukturen machen muss, bevor das auch nur angezigt werden kann, finde ich den Weg über osm2pgsql für die Anzeige von xy in Qgis nicht nur bequemer sondern erheblich schneller.
und spätestens bei allen Verwaltungsgrenzen und Landuses über Deutschland wird es denn bei der Anzeige auch eine performancefrage für den Server, wenn er das onthefly berechnen soll, oder?

Ich habe das Problem, das wirklich gravierend ist, anders gelöst: Die Arbeit, die osm2pgsql freundlicherweise beim Import erledigt (Flächen und Grenzen zusammenfassen), macht bei mir die Datenbank. Es gibt da einige Trigger, die das "on the Fly" erledigen, immer dann wenn sich daran was ändert.
War aber ein hartes Stück Arbeit.

Was mir jetzt unklar ist (hab mich eigentlich nie wieder richtig mit osm2pgsql beschäftigt): geht, und wenn ja wie, der Update mit minütlichen Diff-Files? Und um das zu toppen: was ist mit dem Streaming Update mit Osmosis, der das Lag auf unter 10 Sekunden runterschrauben soll? Hab den zwar noch nicht zum Laufen bekommen, aber das ist ein anderes Thema.

Wenn Jan ein ganz bestimmtes Ziel hat und der Weg dahin ausgebaut ist, soll er ihn ruhig so gehen - allerdings mit der aktuellen Software und passender Dokumentation.

Gruss
walter

EDIT: Nehmen wir mal an, dass hstore unter Windows geht. Hatte mvollmers Reply noch nicht gelesen.

Last edited by wambacher (2013-07-11 08:46:43)

Offline

#12 2013-07-11 10:27:02

Lübeck
Member
Registered: 2009-02-17
Posts: 2,655

Re: Hilfe bei Postgis Einrichtung

Moin !

ich habe jetzt nochmal neu installiert und zunächst von http://www.enterprisedb.com/products-se … ad#windows die entsprechende Version.

Dann habe ich wie in [1] hingewiesen den Stack installiert und darüber dann Postgis 2.0.

Das Programm startet auch ! Dann habe ich im OSM-Wiki geschaut und mich mal auf [2] an 9.1 orientiert.

Das dort aufgeführte anlegen der Datenbank osm, die lang mit User OSM sollten nicht die Hürde werden. Das kann man dann auch ggf. noch manuell machen. Das werde ich mir gleich mal ansehen.

Wenn ich das richtig verstehe, dann ist ab 9.1 nicht mehr das Ausführen SQL-Dateien aus 9.0.1 erforderlich. Liege ich richtig?

Dann würde ich jetzt davon ausgehen das ist noch pgsnapshot_schema_0.6.sql aus dem OSMOSIS-Verzeihnis zu importieren? Allerdings verstehe ich das weiter nicht und auch nicht das was das mit dem Superuser auf sich hat.

Als nächstes würde dann ja der Import nach Import a osm file into the database folgen ?

Wäre klasse, wenn mir einer von Euch nochmal etwas weiterhelfen könnte.

Gruß Jan :-)



[1] http://postgis.net/windows_downloads

[2] http://wiki.openstreetmap.org/wiki/Osmo … tGIS_Setup


Mi A1 mit Android 9 PC: Win10

Offline

#13 2013-07-11 11:05:03

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,489
Website

Re: Hilfe bei Postgis Einrichtung

Lübeck wrote:

Dann würde ich jetzt davon ausgehen das ist noch pgsnapshot_schema_0.6.sql aus dem OSMOSIS-Verzeihnis zu importieren?

Jo, richtig

Allerdings verstehe ich das weiter nicht und auch nicht das was das mit dem Superuser auf sich hat.

Superuser ist der PGSQL-Admin. Ich nehme hier den user postgres

Als nächstes würde dann ja der Import nach Import a osm file into the database folgen ?

Ich importiere mit osmosis/script/pgsnapshot_load_0.6.sql .
Am Anfang hab ich die Befehle, die da drinstehen, einfach mit copy/paste einen nach dem anderen im Fenster ausgeführt. Dadurch hab ich viel gelernt. Man sieht auch gleich wo es klemmt. Jetzt rennt der bei mir sauber durch - zuletzt vor ca 3 Monaten für 5 Tage bei einem Planet-Import. Da war Geduld, gute Nerven und ein stabiles System angesagt.

Wäre klasse, wenn mir einer von Euch nochmal etwas weiterhelfen könnte.

aber gerne. (*)

Gruss
walter

*) "Schon wieder eine Seele vom ... gerettetet, schon wieder eine Seele zu PostGis hingebracht" smile

Last edited by wambacher (2013-07-11 11:05:37)

Offline

#14 2013-07-11 12:07:44

Lübeck
Member
Registered: 2009-02-17
Posts: 2,655

Re: Hilfe bei Postgis Einrichtung

hi !

so - einen Schritt weiter ...

Jetzt wollte ich das pgsnapshot_load_0.6.sql einspiele. Muss ja gestehen einwenig kenne ich solche Arten von Tools (Autodesk Topobase die auf oracle setzt).

Wenn ich das Script ausführen will (oder muss ich pgScript ausführen anklicken ?), dann kommt es im Block

-- Import the table data from the data files using the fast COPY method.
\copy users FROM 'users.txt'
\copy nodes FROM 'nodes.txt'
\copy ways FROM 'ways.txt'
\copy way_nodes FROM 'way_nodes.txt'
\copy relations FROM 'relations.txt'
\copy relation_members FROM 'relation_members.txt'

zu folgender Fehlermeldung:

FEHLER:  Syntaxfehler bei »\«
LINE 18: \copy users FROM 'users.txt'

Ist das Linux-Syntax oder von wo soll da was geholt werden ?

/help !

Gruß Jan :-)

Last edited by Lübeck (2013-07-11 13:47:19)


Mi A1 mit Android 9 PC: Win10

Offline

#15 2013-07-11 12:17:16

viw
Member
Registered: 2010-05-15
Posts: 2,623

Re: Hilfe bei Postgis Einrichtung

wambacher wrote:

Was mir jetzt unklar ist (hab mich eigentlich nie wieder richtig mit osm2pgsql beschäftigt): geht, und wenn ja wie, der Update mit minütlichen Diff-Files? Und um das zu toppen: was ist mit dem Streaming Update mit Osmosis, der das Lag auf unter 10 Sekunden runterschrauben soll? Hab den zwar noch nicht zum Laufen bekommen, aber das ist ein anderes Thema.

Wenn Jan ein ganz bestimmtes Ziel hat und der Weg dahin ausgebaut ist, soll er ihn ruhig so gehen - allerdings mit der aktuellen Software und passender Dokumentation.

EDIT: Nehmen wir mal an, dass hstore unter Windows geht. Hatte mvollmers Reply noch nicht gelesen.

Also osm2pgsql unterstützt updates, wenn man mit --slim startet, was bei größeren Importen mangels Arbeitsspeicher eh erforderlich sein dürfte. Ob da jetzt streaming geht wage ich zu bezweifeln, weiß ich aber nicht.

Viel schwerer wiegt eigentlich die Tatsache das hstore in der für windows komplierten Version bei osm2pgsql nicht funktionieren soll. In der alten Version war dies noch kein Problem, aber dort gibt es dann den 32bit Überlauf für die IDs. Man sollte sich also überlegen wieviel man importiert. Wer nur Bundesländer oder Deutschland importiert, wird mit osm2pgsql hinreichend schnell eine neue Datenbank aufsetzen, wenn er doch noch andere Tags braucht. Wird das Gebiet größer wird das ganze unangenehmer. jedenfalls mit dem Windowsclient. Aber es gibt ja für den Import auch Knopix und/oder virtuelle Maschienen.

Offline

#16 2013-07-11 13:32:18

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,489
Website

Re: Hilfe bei Postgis Einrichtung

Lübeck wrote:

Wenn ich das Script ausführen will (oder muss ich pgScript ausführen anklicken ?), dann kommt es im Block

Ist das Linux-Syntax oder von wo soll da was geholt werden ?

Ich hoffe mal, du das den Script innerhalb von psql aufgeführt, oder?

walter@wno-server:/opt/install/yacy$ psql planet master
psql (9.1.9)
Type "help" for help.

planet=# \i /osmosis/script/pgsnapshot_load_0.6.sql
..
..
..
\q

oder auch mit psql planet master -f /osmosis/script/pgsnapshot_load_0.6.sql

planet ist bei mir der Name der db und master der superuser.

psql-Befehle fangen mit \ an. \i steht für include, \q für quit und \? für psql-Help.

\h gibt sql-help aus. also die Hilfe über die sql-Befehle. Mer reden hier derzeit aber über PSQL.

Gruss
walter

Last edited by wambacher (2013-07-11 13:40:46)

Offline

#17 2013-07-11 13:50:15

Lübeck
Member
Registered: 2009-02-17
Posts: 2,655

Re: Hilfe bei Postgis Einrichtung

hi !

ich habe innerhalb von pgAdmin auf das Icon mit der Lupe und dem Text SQL geklickt. Dann kam ein Dialog und da war die Registerkarte SQL-Editor aktiv.

In das linke obere Feld habe ich den Inhalt aus der pgsnapshot_load_0.6.sql reinkopiert (sorry, im Posting oben xxx statt des Namens geschrieben).

Dann habe ich auf Abfrage ausführen (grüner Pfeil) geklickt - dann kam es zu genannte Meldungen gekommen.

War das falsch oder richtig ?

Was meinst Du ansonsten mit "innerhalb von psql" ??

Gruß Jan :-)


Mi A1 mit Android 9 PC: Win10

Offline

#18 2013-07-11 14:29:05

brogo
Member
From: 54,11 +-1°
Registered: 2009-06-02
Posts: 552

Re: Hilfe bei Postgis Einrichtung

Lübeck wrote:

ich habe innerhalb von pgAdmin auf das Icon mit der Lupe und dem Text SQL geklickt. Dann kam ein Dialog und da war die Registerkarte SQL-Editor aktiv.

In das linke obere Feld habe ich den Inhalt aus der pgsnapshot_load_0.6.sql reinkopiert (sorry, im Posting oben xxx statt des Namens geschrieben).

Dann habe ich auf Abfrage ausführen (grüner Pfeil) geklickt - dann kam es zu genannte Meldungen gekommen.

War das falsch oder richtig ?

Im Grunde sollte das auch klappen, egal ob über pgAdmin oder über psql. Bei pgAdmin ist darauf zu achten, in welcher Datenbank, Du das Script ausführst.

Kurz was Grundsätzliches: mit pgsnapshot_schema_0.6.sql wird für die schon erstellte Datenbank das Snapshot-Schema angelegt. Mit pgsnapshot_load_0.6.sql lädst Du dann in die Datenbank einen mit osmosis mit der Option --write-pgsql-dump erstellen Dump in die Datenbank. Alternativ kannst Du mit Osmosis direkt ohne Zwischenschritt mit --write-pgsql in die Datenbank schreiben. Zu Testzwecken solltest Du erstmal mit einem kleinen Extrakt (z.B. nur Lübeck) anfangen.

Lübeck wrote:

Was meinst Du ansonsten mit "innerhalb von psql" ??

Halt nicht direkt auf der Kommandozeile, sondern über den psql-Befehl. Du kannst psql über die Kommandozeile starten. Denn Pfad solltest Du aber vorher in die Windows-Umgebungsvariable "PATH" aufnehmen. Dann kannst Du die SQL-Scripte auch so ausführen:

psql -d osm -f pgsnapshot_load_0.6.sql

Christian

Offline

#19 2013-07-11 14:39:43

Lübeck
Member
Registered: 2009-02-17
Posts: 2,655

Re: Hilfe bei Postgis Einrichtung

hi !

habe jetzt die Konsole geöffnet und folgende Eingaben gemacht. Das osm vorab steht vermutlich für die aktuelle Datenbank?

psql_20130711.jpg

Das Protokoll hat zwei Versuche - im zweiten habe ich mir überlegt das das mit psql und -d vermutlich weggelassen werden, da ich schon da bin.

Habe dann nochmal versucht das ich den Pfad in "" gesetzt habe - weil jan angemerkt wird. Dem Kommando wird zwar nicht wiedersprochen - aber es kommt auch keine Protokoll!!!!

Im pgAdmin ist weiterhin nur ein Schema (public) gelistet!

Eine Idee ?

Gruß Jan :-)

Last edited by Lübeck (2013-07-11 14:42:08)


Mi A1 mit Android 9 PC: Win10

Offline

#20 2013-07-11 15:37:13

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,489
Website

Re: Hilfe bei Postgis Einrichtung

Lübeck wrote:

hi !
habe jetzt die Konsole geöffnet und folgende Eingaben gemacht. Das osm vorab steht vermutlich für die aktuelle Datenbank?

ja  -d osm  meint entsprechende DB.

Du kommst hier mit der Bedeutung von \ auf den verschiedenen Kommandoebenen durcheinander. In deinen Befehl ist \ Bestandteil des Windows-Pfadnamens zur Scriptdatei. Die scheint er nicht zu finden. Ich dagegen rede immer von dem \ als ersten Buchstaben der Befehle für den  PSQL-Interpreter. Mit dem würde ich mich eh mal beschäftigen, da du dort in der Regel die PSQL-Befehle (mit \) und später alle deine SQL-Abfragen (ohne \) ausführen wirst.

Im pgAdmin ist weiterhin nur ein Schema (public) gelistet!

ja, das ist auch ok so. Hauptsache deine DB  - ich nehme mal an, dass die osm heisst- ist da. Und darin wird ein Schema "public" gelistet.  "snapshot" oder sowas wirst du da nie sehen. Osmosis "redet" zwar vom snapshot-Schema aber das ist kein postgresql-Schema sondern beschreibt nur die OSM-Struktur der OSM-DB. Klingt verwirrend - ignoriere es einfach.
Ansonsten ist pgadmin prima zum Nachsehen und späteren Administrieren gut, aber der Script zum Füllen der DB ist da fehl am Platz. Das ist Job von PSQL.

Hier mal 2 Screenshots meiner DB:
idwqwmw2s8w.png
DB planet mit public-Schema (aber snapshot drin)
h97kefc39lb.png
erst hier erkennt man das osm-Schema. Da findet man neben nodes auch users, relations, relation_members, ways, way_nodes und andere Kleinigkeiten plus die von mir erzeugten Tabellen. Man beachte tags als hstore  in der aufgeklappten Tabelle nodes.

tl;dr:  psql als Interpreter aufrufen (psql osm superuser) und darin die Befehle eingeben. superuser ist natürlich der von dir gewählte oder auch postgres
         
Gruss
walter

lang lang ist es her, da hab ich hier auch nicht durchgeblickt - aber das gibt sich wink

Last edited by wambacher (2013-07-11 15:41:48)

Offline

#21 2013-07-11 21:32:46

Lübeck
Member
Registered: 2009-02-17
Posts: 2,655

Re: Hilfe bei Postgis Einrichtung

hi !

mit Hilfe von Brogo bin ich heute Abend etwas weitergekommen und wir haben pgsnapshot_schema_0.6.sql einlesen können - fast, denn nachher kamen Fehlermeldungen ... doch erst einmal das Protokoll:

D:\DATEN\JAN\openstreetmap\osmosis\script>psql -U postgres -d osm -f pgsnapshot_
schema_0.6.sql
psql:pgsnapshot_schema_0.6.sql:4: HINWEIS:  Tabelle »actions« existiert nicht, w
ird übersprungen
DROP TABLE
DROP TABLE
DROP TABLE
DROP TABLE
DROP TABLE
DROP TABLE
DROP TABLE
DROP TABLE
DROP FUNCTION
CREATE TABLE
CREATE TABLE
CREATE TABLE
psql:pgsnapshot_schema_0.6.sql:40: FEHLER:  Funktion addgeometrycolumn(unknown,
unknown, integer, unknown, integer) existiert nicht
ZEILE 1: SELECT AddGeometryColumn('nodes', 'geom', 4326, 'POINT', 2);
                ^
TIP:  Keine Funktion stimmt mit dem angegebenen Namen und den Argumenttypen über
ein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.
CREATE TABLE
CREATE TABLE
CREATE TABLE
CREATE TABLE
INSERT 0 1
psql:pgsnapshot_schema_0.6.sql:88: HINWEIS:  ALTER TABLE / ADD PRIMARY KEY erste
llt implizit einen Index »pk_schema_info« für Tabelle »schema_info«
ALTER TABLE
psql:pgsnapshot_schema_0.6.sql:90: HINWEIS:  ALTER TABLE / ADD PRIMARY KEY erste
llt implizit einen Index »pk_users« für Tabelle »users«
ALTER TABLE
psql:pgsnapshot_schema_0.6.sql:92: HINWEIS:  ALTER TABLE / ADD PRIMARY KEY erste
llt implizit einen Index »pk_nodes« für Tabelle »nodes«
ALTER TABLE
psql:pgsnapshot_schema_0.6.sql:94: HINWEIS:  ALTER TABLE / ADD PRIMARY KEY erste
llt implizit einen Index »pk_ways« für Tabelle »ways«
ALTER TABLE
psql:pgsnapshot_schema_0.6.sql:96: HINWEIS:  ALTER TABLE / ADD PRIMARY KEY erste
llt implizit einen Index »pk_way_nodes« für Tabelle »way_nodes«
ALTER TABLE
psql:pgsnapshot_schema_0.6.sql:98: HINWEIS:  ALTER TABLE / ADD PRIMARY KEY erste
llt implizit einen Index »pk_relations« für Tabelle »relations«
ALTER TABLE
psql:pgsnapshot_schema_0.6.sql:100: HINWEIS:  ALTER TABLE / ADD PRIMARY KEY erst
ellt implizit einen Index »pk_relation_members« für Tabelle »relation_members«
ALTER TABLE
psql:pgsnapshot_schema_0.6.sql:104: FEHLER:  Spalte »geom« existiert nicht
CREATE INDEX
CREATE INDEX
psql:pgsnapshot_schema_0.6.sql:112: FEHLER:  Index »idx_nodes_geom« für Tabelle
»nodes« existiert nicht
CREATE FUNCTION
CREATE FUNCTION

... doch dann ist da diese Fehlermeldung...

psql:pgsnapshot_schema_0.6.sql:40: FEHLER:  Funktion addgeometrycolumn(unknown,
unknown, integer, unknown, integer) existiert nicht
ZEILE 1: SELECT AddGeometryColumn('nodes', 'geom', 4326, 'POINT', 2);
                ^
TIP:  Keine Funktion stimmt mit dem angegebenen Namen und den Argumenttypen über
ein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.

Brogo meinte das dieses mit der fehlenden plpgsql zu tun haben könnte; doch auch ein...

C:\Program Files\PostgreSQL\9.2\bin>createlang -U postgres plpgsql osm
createlang: Sprache »plpgsql« ist bereits in Datenbank »osm« installiert

hat nichts geändert.

Hat einer eine Idee zu später Stunde ?

Gruß Jan :-)


Mi A1 mit Android 9 PC: Win10

Offline

#22 2013-07-11 21:36:48

Osmonav
Member
Registered: 2013-05-19
Posts: 33

Re: Hilfe bei Postgis Einrichtung

Hallo,

ich kenne den Installationsweg unter Windows nicht. Unter Linux ist es so, dass man zuerst einmal sich als postgres bei der Datenbank template1 anmelden und sich einen Benutzer mit entsprechenden Rechten für die Bearbeitungen einrichten muss.

Danach kann man dann im eigenen User mit createdb eine Datenbank einrichten.

Den Hinweis mit hstore habe ich von einem Windows-User. Ich habe es mangels Windows noch nicht getestet.

Gruß, Wolfgang

Offline

#23 2013-07-11 22:36:24

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,489
Website

Re: Hilfe bei Postgis Einrichtung

Lübeck wrote:

Brogo meinte das dieses mit der fehlenden plpgsql zu tun haben könnte; doch auch ein...

Hat einer eine Idee zu später Stunde ?

klaro,

installiere den Postgis Legacy Support indem du den psql-Script legacy.sql startest. Der befindet sich bei mir im Laufzeit-Verzeichnis /usr/share/postgresql/9.1/contrib/postgis-2.0/legacy.sql - sollte bei dir ja wohl in 9.2 liegen. Wo das Zeug bei windows liegt, kriegst du ja wohl selber raus.
Ansonsten ist der auch noch im Installations-Verzeichnis von postgis-2.0.1/postgis zu finden.

Gruss
walter

Last edited by wambacher (2013-07-11 22:39:22)

Offline

#24 2013-07-12 07:54:04

Lübeck
Member
Registered: 2009-02-17
Posts: 2,655

Re: Hilfe bei Postgis Einrichtung

Moin !

ich habe nun das mit der legacy.sql "versucht" mit folgendem Aufruf:

C:\Program Files\PostgreSQL\9.2\share\contrib\postgis-2.0>psql -U postgres -d os
m -f  legacy.sql

und erhalte folgendes Protokoll - leider ist der Anfang nicht mehr im Befehlszeilenfenster von Windows zu erreichen und auch ein > Dateiname für die Ausgabe liefert immer nur ein CREATE FUNCTION.

Weiter ist dieses das Ergebnis des zweiten Versuchs! Nur der vollständigkeithalber.

psql:legacy.sql:770: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:770: FEHLER:  Typ spheroid existiert nicht
psql:legacy.sql:776: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:776: HINWEIS:  Rückgabetyp geometry_dump ist nur eine Hülle
psql:legacy.sql:782: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:782: HINWEIS:  Rückgabetyp geometry_dump ist nur eine Hülle
psql:legacy.sql:788: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:788: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:794: HINWEIS:  Argumenttyp box2d ist nur eine Hülle
psql:legacy.sql:794: HINWEIS:  Rückgabetyp box2d ist nur eine Hülle
psql:legacy.sql:800: HINWEIS:  Argumenttyp box3d ist nur eine Hülle
psql:legacy.sql:800: HINWEIS:  Rückgabetyp box3d ist nur eine Hülle
psql:legacy.sql:806: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:806: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:813: FEHLER:  Typ »geometry« ist nur eine Hülle
psql:legacy.sql:829: HINWEIS:  Rückgabetyp box2d ist nur eine Hülle
psql:legacy.sql:829: FEHLER:  PL/pgSQL-Funktionen können keinen Rückgabetyp bo
x2d haben
psql:legacy.sql:846: HINWEIS:  Rückgabetyp box2d ist nur eine Hülle
psql:legacy.sql:846: FEHLER:  PL/pgSQL-Funktionen können keinen Rückgabetyp bo
x2d haben
psql:legacy.sql:852: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:852: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:858: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:858: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:864: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:864: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:871: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:871: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:878: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:878: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:884: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:884: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:890: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:890: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:896: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:896: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
psql:legacy.sql:902: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:902: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle

Ich verstehe nur Bahnhof .... ? \help



Auch wenn noch nicht alles soweit ist - ich habe mir schon einmal die Tabellen angesehen wie diese mit den Spalten angelegt sind. Die Tags sind alle in der gleichnamigen Spalte hinterlegt. Könnte man den osmosis-Import später (nur mal so prinzipell) so konfigurieren das es Spalten zu den Standardtags highway, building, name etc. gibt. Würde doch sicherlich die Auswertung in den QGIS-Rules vereinfachen?

Dann eine Frage zum allgmeinen. Wenn man dann mal ein Projekt im Süden, im Norden und Westen hat und diese relativ räumlich begrenzt sind würde man diese Daten in eine DB aufnehmen oder zur jedes eine eigene DB?

Zu guter Letzt das Thema Update. Kommen neue Daten - ich spreche jetzt nicht von einem Intervall-Update ! - dann müßte man pgsnapshot_schema_0.6.sql nur neu einlesen und alles ist für diese DB zurückgesetzt ! Korrekt ?

... so nun muss erst einmal die ganze Sache rund gemacht werden.

Gruß Jan :-)


Mi A1 mit Android 9 PC: Win10

Offline

#25 2013-07-12 08:29:50

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,489
Website

Re: Hilfe bei Postgis Einrichtung

Lübeck wrote:

Moin !

ich habe nun das mit der legacy.sql "versucht" mit folgendem Aufruf:

C:\Program Files\PostgreSQL\9.2\share\contrib\postgis-2.0>psql -U postgres -d os
m -f  legacy.sql

Der sieht vernünftig aus. kannst es das nächste mal mit psql osm postgres -f ... versuchen. hat nix mit dem Problem zu tun, ist einfach weniger Tipperei.
(zumindest bei mir unter ubuntu)

psql:legacy.sql:770: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:770: FEHLER:  Typ spheroid existiert nicht
psql:legacy.sql:776: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:776: HINWEIS:  Rückgabetyp geometry_dump ist nur eine Hülle
psql:legacy.sql:782: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:782: HINWEIS:  Rückgabetyp geometry_dump ist nur eine Hülle
psql:legacy.sql:788: HINWEIS:  Argumenttyp geometry ist nur eine Hülle
psql:legacy.sql:788: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle
...
psql:legacy.sql:902: HINWEIS:  Rückgabetyp geometry ist nur eine Hülle

Ich verstehe nur Bahnhof .... ? \help

Die Hinweise sind unkritisch. Was mit den Fehlern ist, kann ich auch nicht erklären. Hat denn der Import geklappt? Insbesonders die vorher berechtigte Meldung bei "SELECT AddGeometryColumn('nodes', 'geom', 4326, 'POINT', 2);" sollte weg sein. Diesen Befehl einfach mal in PSQL eingeben. Entweder kommt der selbe Fehler (AddGeometryColumn nicht bekannt) oder er sagt, dass die Spalte "geom" in der Tabelle nodes bereits existiert.

So sollte nodes aussehen: 

 walter@wno-server:/opt/install/yacy$ psql planet master
psql (9.1.9)
Type "help" for help.

planet=# \d nodes
                  Table "public.nodes"
    Column    |            Type             | Modifiers 
--------------+-----------------------------+-----------
 id           | bigint                      | not null
 version      | integer                     | not null
 user_id      | integer                     | not null
 tstamp       | timestamp without time zone | not null
 changeset_id | bigint                      | not null
 tags         | hstore                      | 
 geom         | geometry(Point,4326)        | 
Indexes:
    "pk_nodes" PRIMARY KEY, btree (id), tablespace "tablespace1"
    "idx_nodes_geom" gist (geom)

planet=# \q
walter@wno-server:/opt/install/yacy$ 

Wichtig ist die Spalte "geom". Ich meine aber in deinem Output gesehen zu haben, dass irgendwo geom fehlt.

Auch wenn noch nicht alles soweit ist - ich habe mir schon einmal die Tabellen angesehen wie diese mit den Spalten angelegt sind. Die Tags sind alle in der gleichnamigen Spalte hinterlegt. Könnte man den osmosis-Import später (nur mal so prinzipell) so konfigurieren das es Spalten zu den Standardtags highway, building, name etc. gibt. Würde doch sicherlich die Auswertung in den QGIS-Rules vereinfachen?

Nicht so einfach und mMn unnötig. Außerdem könntest du dann gleich osm2pgsql nehmen. Du willst ja "nur" das machen, was dein Kumpel (?) erstellt hat und solltest da sowenig wie möglich andern.

Dann eine Frage zum allgmeinen. Wenn man dann mal ein Projekt im Süden, im Norden und Westen hat und diese relativ räumlich begrenzt sind würde man diese Daten in eine DB aufnehmen oder zur jedes eine eigene DB?

Ich würde EINE DB für alle Bereiche nehmen, diesen Bereich (Germany?) aber immer komplett importieren/pflegen. Du kommst dann nur in Versionskonflikte. Und spätestens, wenn du ein wenig mit Postgis "rumgespielt" hast, bekommst du das Problem, dass dir genau die Ecke fehlt, die du für irgend eine Ad-Hoc-Query brauchst.

Zu guter Letzt das Thema Update. Kommen neue Daten - ich spreche jetzt nicht von einem Intervall-Update ! - dann müßte man pgsnapshot_schema_0.6.sql nur neu einlesen und alles ist für diese DB zurückgesetzt ! Korrekt ?

Natürlich nicht sad Du müsstes pgsnapshot_load_0.6.sql neu laufen lassen.

btw: hast du pgsnapshot_schema_0.6_bbox.sql und pgsnapshot_schema_0.6_linestring.sql laufen lassen? solltest du machen, wenn die aktuellen Probleme weg sind. dann muss aber pgsnapshot_load_0.6.sql laut eingebauten Kommentaren geändert werden.
Zeig mal den output von \d ways .

Gruss
walter

Last edited by wambacher (2013-07-12 08:33:29)

Offline

Board footer

Powered by FluxBB