Beim Starten des Dienstes bekomme ich aber nun eine “drwtsn32.exe Fehlermeldung”: “Die Anwendung konnte nicht richtig initialisiert werden.”
Ich kann aber in der DOS-Eingabeaufforderung den Server per "C:\Programme\PostgreSQL\8.3\bin\pg_ctl.exe start -w -N “pgsql-8.3” -D “D:\data” starten und alles funktioniert einwandfrei.
Weiß jemand, wie ich den Dienst wieder zum Laufen bekomme?
Da steht unter “Pfad zur EXE-Datei” <C:\Programme\PostgreSQL\8.3\bin\pg_ctl.exe runservice -w -N “pgsql-8.3” -D “D:\data”> — Also genau der gleiche Befehl nur dass statt dem Argument start das Argument runservice übergeben wird.
Dann gib doch mal bitte den entsprechenden Befehl direkt in die Konsole (Eingabeaufforderung) ein, inkl. runservice, um zu schauen ob das Problem dann auch auftritt.
Ich fand meine Antwort nicht pampig, ich war nur enttäuscht.
Dein Tipp hat leider nicht geholfen, aber du scheinst mir sehr kompetent zu sein und ich hoffe, dass du mir aus deiner weihnachtlichen Laune heraus vielleicht doch helfen kannst.
Ich beschreibe nochmal Schritt für Schritt, was ich gemacht habe:
Dienst gestoppt
Verzeichnis data aus C:\Programme\PostgreSQL\8.3 nach D:\ kopiert und in “Postgres83-Data” umbenannt
In C:\Programme\PostgreSQL\8.3\data alle Dateien bis auf pg_hba.conf, pg_ident.conf und postgresql.conf gelöscht
In postgresql.conf die Zeile >data_directory = ‘D:/Postgres83-Data’< eingefügt
In D:\Postgres83-Data alle Dateien bis auf die Verzeichnisse und PG_VERSION gelöscht
Versucht Dienst zu starten -> Fehlermeldung siehe oben
Server manuell gestartet
Server manuell gestoppt und deinen letzten Tipp ausprobiert -> wieder gleiche Fehlermeldung beim Serverstart
Möglicherweise stimmen die Dateirechte nicht. Ich nix Windoze, weiß also nicht wirklich genau, was man da flasch machen kann bzw. wie man das prüft und richtig macht.
Danke. Das war es. Die Dateirechte stimmten nicht. Der Dienst wurde für den Benutzer postgres gestartet, der “Postgres83-Data”-Ordener ist allerdings in “Eigene Dateien” eines anderen Benutzers gespeichert. Damit darf der Benutzer Postgres natürlich nicht auf diesen Ordner zugreifen.
Ich habe >Fajo< installiert, damit ich mit XP Home auch die Zugriffsrechte für Dateien ändern kann. Allerdings gibt es das Benutzerkonto Postgres nicht. Weiß jemand, wie ich dien Zugriff auf den Ordner erlauben kann?
Eine unsaubere Lösung wäre, den Benutzer “Jeder” die Rechte zu geben. Das ist aber wirklich schmutzig und dann hat auch wirklich jeder das Recht auf diese Dateien zuzugreifen.