Postgres 11 Installationsfehler - database cluster initialisation failed

Fragen und Probleme zur Installation von PostgreSQL (hauptsächlich Binary Packete).
Hades
Neuer Benutzer
Beiträge: 4
Registriert: Mo 11. Feb 2019, 15:29

Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von Hades » Mo 11. Feb 2019, 16:19

Hallo zusammen,

habe seit heute ein neues Laptop erhalten, DELL XPS 15 mit Windows 10 Pro. Das Gerät ist unberührt und hat lediglich Dell Software drauf.
Ich versuche bisher unerfolgreich postgresql 11 zu installieren. Während der Installation kommt folgende Fehlermeldung:
Problem running post-install step. Installation may not complete correctly. The Database cluster initialisation failed.
Anschließend habe ich mir einige Stackoverflow-Threads angeschaut und habe folgende Lösungen versucht:
- Postgres nicht in Programme installiert.
- Einen postgres Benutzer in Windows erstellt und die Zugriffsrechte für den Installationspfad von Postgres modififziert wie in diesem Video gezeigt ->
https://www.youtube.com/watch?v=pS_zWDDDSe0
- Alle Updates installiert die Windows derzeit zu bieten hat.
- Firewall und Antivirus von Windows selber deinstalliert.

Nichts davon hat Erfolg gebracht, die Fehlermeldung während der Installation ist immer die selbe:
problem running post install step database cluster initialisation failed
Der Log gibt folgendes heraus:
Error running cscript //NoLogo
"C:\develop\postgres/installer/server/initcluster.vbs"
"NT AUTHORITY\NetworkService" "postgres"
"****" "C:\develop\postgres"
"C:\develop\postgres\data" 5432
"DEFAULT" 0: Program ended with an error exit code Problem running post-install step. Installation may not complete correctly The database cluster initialisation failed. [14:03:49] Delete the temporary scripts directory... Creating menu shortcuts... Executing cscript //NoLogo "C:\develop\postgres\installer\server\createshortcuts_clt.vbs" "PostgreSQL 11"
"C:\develop\postgres" Script exit code: 0
Executing batch file 'radAD31B.bat'...
The program "postgres" was found by
"C:/develop/postgres/bin/initdb.exe"
but was not the same version as initdb.

castorp
Erfahrener Benutzer
Beiträge: 1177
Registriert: Sa 27. Jun 2009, 22:24
Wohnort: Bayern

Re: Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von castorp » Mo 11. Feb 2019, 16:41

Das beantwortet nicht direkt Deine Frage, aber ich installiere Postgres unter Windows immer so:
  • ZIP Archiv von https://www.enterprisedb.com/products-s ... indownload herunterladen
  • ZIP Archiv auspacken, in Deinem Fall z.B. nach C:\develop - da entsteht dann ein Unterverzeichnis namens pgsql, das kannst Du dann zu "postgres" umbennen
  • Data-Directory (auch unter dem Namen "Cluster" bekannt) via initdb manuell anlegen, z.B.:

    Code: Alles auswählen

    c:\develop\postgres\bin\initdb -D c:\Develop\postgres_data
  • Dann den Service erstellen (benötigt Admin-Rechte!)

    Code: Alles auswählen

    c:\develop\postgres\bin\pg_ctl register -D postgresql-11 -D c:\Develop\postgres_data
Wenn der Service nicht startet, liegt's meistens an falschen Berechtigungen für das Datenverzeichnis. Die kannst Du dann über die "Eigenschaften" des Verzeichnisses anpassen.

Alternativ kannst Du ja mal den Installer von 2ndQuadrant ausprobieren: https://www.2ndquadrant.com/en/resource ... dquadrant/ oder den von BigSQL: https://www.openscg.com/bigsql/postgresql/installers/
A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'

Dravion
Benutzer
Beiträge: 37
Registriert: So 6. Nov 2016, 09:43

Re: Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von Dravion » Mo 11. Feb 2019, 18:35

Versuch nal folgendes.
1)
Öffne Windows Commandprompt als Admin
2)
tippe ein cd (dein Posgtres install ordner und darin dein bin ordner)
3)
Tipp e ein initdb.exe und bestätige mit ENTER

Was bekommst Du für eine Meldung?

Wenn da was steht wie msvcr120.dll not found oder ähnlich dann installier mal

https://www.microsoft.com/de-de/downloa ... x?id=40784

und wiederhole 3).

pogomips
Erfahrener Benutzer
Beiträge: 114
Registriert: Fr 18. Nov 2016, 09:55

Re: Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von pogomips » Mo 11. Feb 2019, 22:19

Gerade die Version von BigSQl 64 bit auf Win10 pro, nicht unberührt, nicht Dell getestet.
Habe probehalber eine Tabelle angelegt geht. Installation lief mit PGadmin 3, der fürchterlich meckert bei der Installation und beim Start und Betrieb.
Keine "advanced" Optionen gewählt, bestehende Installation wurde erkannt und automatisch anderer Port gewählt.
Auf dem Rechner sind ein paar übliche Softwaren drauf, Libre Office, diverse Browser, Thunderbird, ..

Dadurch "geerbt" alle MS Visual C++ redistributables von 2005 bis 2015 meist in 32 und 64 bit.
Die genannte Installation behauptet laut Webseite von sich, dass sie mit Win10 pro nicht getestet wurde, wenn ich das richtig sehe.

Hades
Neuer Benutzer
Beiträge: 4
Registriert: Mo 11. Feb 2019, 15:29

Re: Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von Hades » Di 12. Feb 2019, 10:30

Erst einmal ein Dank an euch für die Antworten. Ich werde die Sachen testen und nochmals berichten.
Was ich ebenfalls schon probiert hatte, auch ohne Erfolg:

https://feilerdev.wordpress.com/2017/12 ... installer/

Sobald ich dann aber die Datenbank initialisieren möchte manuell, spuckt er mir den selben Fehler aus wie oben als letztes angehängt:
"C:/develop/postgres/bin/initdb.exe"
but was not the same version as initdb.
Also ich befürchte eher dass irgend eine Dell Software dort interveniert, denn auf zwei Geräten des selben Modells funktioniert es nicht.

EDIT:

Auf meinem Arbeitslappi habe ich Windows Enterprise drauf und dort funktioniert Postgres11 ohne Probleme, konnte das sogar ganz normal in den Ordner Programfiles installieren. Bei meinen Arbeitskollegen die mit ähnlichen Geräten(Lenovo) ausgestattet sind, ebenfalls mit Win-Enterprise bestehen keine Probleme dieser Art.

castorp
Erfahrener Benutzer
Beiträge: 1177
Registriert: Sa 27. Jun 2009, 22:24
Wohnort: Bayern

Re: Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von castorp » Di 12. Feb 2019, 10:47

Vielleicht liegt's am Virenscanner?

Kannst Du das Verzeichnis c:\Develop\Postgres (und alle Unterverzeichnisse) als Ausnahme hinzufügen, so dass der Virenscanner alle Dateien dort ignoriert?
A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'

Hades
Neuer Benutzer
Beiträge: 4
Registriert: Mo 11. Feb 2019, 15:29

Re: Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von Hades » Di 12. Feb 2019, 10:48

Virenscanner ist nativ nur der von Windows drauf, und den hatte ich mit der Windows Firewall temporär ausgeschaltet.

Dravion
Benutzer
Beiträge: 37
Registriert: So 6. Nov 2016, 09:43

Re: Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von Dravion » Di 12. Feb 2019, 12:52

Hades hat geschrieben:
Di 12. Feb 2019, 10:30
Erst einmal ein Dank an euch für die Antworten. Ich werde die Sachen testen und nochmals berichten.
Was ich ebenfalls schon probiert hatte, auch ohne Erfolg:

https://feilerdev.wordpress.com/2017/12 ... installer/

Sobald ich dann aber die Datenbank initialisieren möchte manuell, spuckt er mir den selben Fehler aus wie oben als letztes angehängt:
"C:/develop/postgres/bin/initdb.exe"
but was not the same version as initdb.
Nein.

Wie es ausschaut hattest Du vorher eine PostgreSQL DB dort wo dein PGDATA Verzeichnis hinzeigt.
Benenne es um oder lösche es und erstelle mit initdb.exe eine neue Datenbankstruktur die dann zu der Postgres
Softwareversion passt die Du installiert hast.

Das hat nicht das gringste mit Dateizugriffsrechten oder Antivirus zu tun.

Hades
Neuer Benutzer
Beiträge: 4
Registriert: Mo 11. Feb 2019, 15:29

Re: Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von Hades » Di 12. Feb 2019, 13:29

Kann eigentlich nicht sein, zur Datenbank ist es nie gekommen. Ich habe derzeit auch keine Version installiert sondern nur wie oben beschrieben dort entpackt und die Schritte versucht. Aber selbst wenn ich in ein anderes Verzeichnis gehe und die oben genannten Versuche starte, kommt immer diese dbinit Fehler.

Wenn ich die cmd aufrufe und dort nur postgres eintippe kommt dort ein Fehler:
C:\Users\Admin>postgres
WARNING: 01000: could not determine encoding for locale "English_Germany.utf8": codeset is "CPutf8"
LOCATION: pg_get_encoding_from_locale, d:\pginstaller.auto\postgres.windows-x64\src\port\chklocale.c:416
FATAL: XX000: postgres: could not locate matching postgres executable
LOCATION: getInstallationPaths, d:\pginstaller.auto\postgres.windows-x64\src\backend\postmaster\postmaster.c:1456
Wenn ich das mit meinem anderen Lappi versuche, kommt lediglich der Hinweis dass die Serverkonfig nicht zu finden ist.

castorp
Erfahrener Benutzer
Beiträge: 1177
Registriert: Sa 27. Jun 2009, 22:24
Wohnort: Bayern

Re: Postgres 11 Installationsfehler - database cluster initialisation failed

Beitrag von castorp » Di 12. Feb 2019, 13:43

Offensichtlich hast Du noch irgendwo eine andere Postgres Installation deren "bin" Verzeichnis im Pfad liegt.
Was liefert denn

Code: Alles auswählen

where initdb
Wenn es da tatsächlich noch irgendwo eine andere Installation gibt, dann entferne das Verzeichnis doch mal aus dem PATH und versuche die Installation nochmal.

Oder versuche die manuellen Schritte (also ohne Installer) wie in meinem ersten Beitrag beschrieben mit absoluten Pfaden, damit eine im PATH liegende Installation nicht dazwischen pfuscht.

Im Übrigen: postgres.exe sollte man nie direkt aufrufen. Starten sollte man den Server immer mit pg_ctl.exe
A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'

Antworten