Pgsql/data zweimal vorhanden - was ist vernünftig?

Hallo allerseits
Habe unter Suse 12.1 folgende Programme installiert:[INDENT]1. Postgis: Version 1.5.3 – 3.32. pgAdmin: Version 1.14.03. Postgres: Version 9.1.1 – 3.1.4

[/INDENT]
Bei der postgresinstallation hatte ich einige Probleme, weil das in verschiedenen Hilfetextengenannte Verzeichnis_/usr/local/bei der Installation aus den Suse-Reposzu /Var/lib mutiert war. Dort kam ich mit den Installationsbefehlen der Hilfetexte auch dann nicht weiter, wenn ich/usr/local/_ zu_/Var/lib_ machte.Nach einigem Probieren habe ichals user postgres irgendwann[INDENT] initdb -D /usr/local/pgsql/data
_
[/INDENT]
eingegeben und es wurde ein Datenbankserver (bzw. die entsprechenden Verzeichnisse wie
/usr/local/pgsql/data)_ erzeugt. Postgis hab ich mit einer Datenbank “avi” auf diesem Server verbunden (sagt man das so? - auf jeden Fall kann ich Spalten/Tabellen mit geometrischen Datentypen in “avi” erzeugen).Den Postgresserver kann ich mit[INDENT]postmaster -D /usr/local/pgsql/data
[/INDENT]

immer starten, allerdings hängt dann die shell. In einem anderen thread erhielt ich deswegen u.A. den Hinweis, es mit /etc/init.d/postgresql start (als root) zu probieren. Dann startete auch ein Server, ich dachte alles ok. Allerdings gab es Authentifizierungsprobleme - peer Authentifizierung gescheitert oder ähnlich. Ich dachte, ich hätte bei der Installation irgendwo ein Passwort eingegeben und dann vergessen, deshalb hab ich im Forum auch nicht weiter nachgefragt.

Habe seither wieder auf postmaster -D /usr/local/pgsql/datazurückgriffen (als user postgres) und mich heute dann hingesetzt um die pg_hba.conf so einzustellen, dass ich nicht immer Meckerfenster bekomme. Dabei fand ich raus, dass ich zwei pg_hba.conf habe, also nix mit Passwortdemenz oder so. Es gibt bei mir anscheinend zwei Postgresserver, die gestartet werden können:[INDENT]/usr/local/pgsql/data
/Var/lib__/pgsql/data
_
[/INDENT]
In der pg_hba.conf in /Var/lib_/pgsql/data
waren einige Einstellungen nicht auf “trust” gesetzt, in der anderen pg_hba.conf dagegen alle. Ich glaube nun, dass bei dem Befehl /etc/init.d/postgresql start (als root) die Installation in /Var/lib_/pgsql/data_ gestartet wird und es zu Anmeldeproblemen kommt. Bei dem Befehl _postmaster -D /usr/local/pgsql/data_als user postgres wird dagegen der Server im Verzeichnis /usr/local/pgsql/data gestartet und die Anmeldung klappt, weil alles auf “trust” gesetzt ist.

Frage 1: Sollte der Server in /usr/local/pgsql/data oder der in /Var/lib//pgsql/data benutzt werden? Ich tendiere zu /usr/local/pgsql/data weil das m.E. besser zur Verzeichnisstruktur von Linux passt, bin mir aber nicht sicher. Wenn es vernünftiger wäre, die Installation in /Var/lib//pgsql/data zu nutzen, müsste ich die Datenbank “avi” unter dem dortigen Server zum laufen bringen, weil damit nicht nur Postgis verknüpft ist, sondern auch Daten vorhanden sind, die ich echt nicht verlieren möchte. Wie macht man denn sowas am besten?

Frage 2: Wenn in der pg_hba.conf die ganzen Einstellungen auf “trust” gesetzt sind, ist das ja nicht so wirklich sicher. Wenn ich jetzt dem user postgres ein Passwort verpasse oder andere user mit Passwörtern anlege, kann ich dann auf andere Authentifizierungsmethoden umstellen? Oder werde ich dann wieder nach Passwörtern gefragt, die ich nicht kenne? Könnte ich in so einem Fall prinzipiell wieder auf “trust” umstellen, um zumindest wieder Zugriff auf die Daten zu haben?

Frage 3: Muß ich /etc/Init.d/postgresql ändern, damit ich mit /etc/init.d/postgresql start (als root) den Server in /usr/local/pgsql/data anstelle in /Var/lib/_/pgsql/data_starten kann? Gibt es dazu eine Anleitung?

Frage 4: das nicht benötigte Verzeichnis …/pgsql/data… würde ich gerne löschen? Spricht da was dagegen?

Das klingt jetzt vielleicht alles etwas kleinkariert, aber ich möchte am Anfang einfach nichts grundlegendes falsch anlegen. Sonderwege, insbesondere bei den Verzeichnissen, sind sicher nicht so gut, weil ich die Daten später mit QGis nutzen will und befürchte, dass es bei unüblichen Verzeichnissen mit Zugriffen problematisch wird.

Hoffe, dass mir irgendwer weiterhelfen kann

Gruß Thomas















\

Warum folgst du nicht einfach der SuSE Anleitung und lässt das Betriebssystem die Datenbank komplett installieren?
Hinterher verbindest du dich auf Port 5432 und dich interessiert eigentlich gar nicht, wo genau die Dateien der Datenbank liegen.

@ ads
weil ich schon beim Initialisieren der von Suse anscheinend in /var/lib installierten Datenbank Probleme mit Zugriffsrechten hatte (weiß leider nicht mehr genau was es war), auf jeden Fall konnte ich keine Datenbank zum Laufen bringen. Da war mir gar nicht klar, dass ich da schon eine komplette Installation hatte. Mit der Installation in usr/local/… hat ja dann auc erstmal alles geklappt.
Gestern hab ich dann das Chaos bemerkt - und nun weiß ich nicht so richtig weiter.
Gruß Thomas

Alles Löschen und einmal richtig machen?

Eigentlich sollte das bei Suse aus den Repositories out of the Box laufen. Auch postgis findet sich dort im Geo-Repository. Zur Hilfe sollte sich auf den Suseseiten auch eine Anleitung finden. Normalerweise liegen dann die Binaries unter /usr/bin, die Datenverzeichnisse unter /var/lib/postgresql(?). Wenn du das ändern magst, entweder weil du das in anderen Verzeichnissen haben magst musst du das selbstverständlich in /etc/init.d/postgresql anpassen oder unter Yast, wen man die Repository version benutzt. Ist aber nicht wirklich schwer. Am besten du wirfst im Moment alles runter und fängst von vorne und sauber neu an.

Gruß Uwe

@ads und Gisman

Ok, danke für die Antworten. also alles nochmal runteruppen und von vorne. Ich hoffe es klappt.

Gruß Thomas