PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Wie behebt man pg_dump-Versionskonfliktfehler?

OS X 10.8 enthält pg_dump Version 9.1.4 im Verzeichnis /usr/bin Verzeichnis, zusammen mit psql und andere Programme, die clientseitig sind PostgreSQL-Tools. Dies bedeutet nicht, dass PostgreSQL als Server installiert ist (es sei denn, Sie haben OS X Server Edition). Sie müssen PostgreSQL also nicht deinstallieren, da es nicht installiert ist, und es ist besser, diese Postgres-Client-Tools nicht in /usr/bin weil sie zu dem von Apple gelieferten System gehören. Sie müssen nur umgangen werden.

Das von postgres.app bereitgestellte Paket umfasst sowohl den PostgreSQL-Server als auch die clientseitigen Tools derselben Version wie dieser Server. Diese Tools werden unter /Applications/Postgres.app/Contents/MacOS/bin installiert

Um diese anstelle der 9.1 von Apple zu verwenden, wenn Sie in einem Terminal arbeiten, heißt es in der postgres.app-Dokumentation:

PATH="/Applications/Postgres.app/Contents/MacOS/bin:$PATH"

und fügen Sie es in Ihr .profile ein Datei.

Sobald Sie das getan haben, führen Sie pg_dump aus , sollten Sie nicht mehr den Fehler erhalten, dass es sich um die falsche Version handelt, da dies diejenige wäre, die mit postgres.app (derzeit 9.2.2) ausgeliefert wird.

Ich habe dieses Setup und es funktioniert gut für mich.