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

PostgreSQL Mountain Lion-Socket-Problem

Laut Fehlermeldung ist die psql Befehl, der zuerst in $PATH erscheint hat /tmp als das fest codierte Standard-Unix-Socket-Verzeichnis.

Da das eigentliche Verzeichnis tatsächlich /var/pgsql_socket ist , sollten Sie es explizit angeben, anstatt sich auf die Vorgabe zu verlassen:

$ psql -h /var/pgsql_socket [other options]

Dasselbe gilt für andere clientseitige Befehle wie createdb , dropdb , createuser ...

Wenn Sie -h nicht angeben möchten jedes Mal kann es in den PGHOST eingefügt werden Umgebungsvariable.

Einige Leute lösen dies auch, indem sie TCP-Verbindungen zu localhost verwenden anstatt das Unix-Socket-Verzeichnis zu verwenden.

Die Hauptursache dieses Problems wäre, dass das System nach der Installation von PostgreSQL unter Mac OS X zwei verschiedene Instanzen des Postgres-Client-Sets (die libpq Bibliothek, psql und andere zugehörige Dienstprogramme), eines, das mit MacOS gebündelt ist, und das andere, das mit dem PostgreSQL-Installationsprogramm geliefert wird.

Daher ist eine weitere Methode, Ihren $PATH zu ändern sodass die psql installiert mit PostgreSQL wird vor der mit dem System installierten ausgewählt (vermutlich /usr/bin/psql ).