sql >> Database >  >> RDS >> PostgreSQL

Probleem met PostgreSQL Mountain Lion-socket

Volgens de foutmelding is de psql commando dat als eerste verschijnt in de $PATH heeft /tmp als de hard-coded standaard unix socket directory.

Aangezien de eigenlijke map in feite /var/pgsql_socket is , moet je het expliciet vertellen in plaats van te vertrouwen op de standaard:

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

Hetzelfde geldt voor andere opdrachten aan de clientzijde, zoals createdb , dropdb , createuser ...

Als u -h . niet wilt specificeren elke keer kan het in de PGHOST . worden geplaatst omgevingsvariabele.

Sommige mensen lossen dit ook op door TCP-verbindingen te gebruiken met localhost in plaats van de Unix-socketdirectory te gebruiken.

De hoofdoorzaak van dit probleem zou zijn dat na installatie van PostgreSQL op Mac OS X, het systeem twee verschillende instanties van de postgres-clientset heeft (de libpq bibliotheek, psql en andere bijbehorende hulpprogramma's), een die is gebundeld met MacOS en de andere die wordt geleverd met het PostgreSQL-installatieprogramma.

Daarom is nog een andere methode om uw $PATH . te wijzigen zodat de psql geïnstalleerd met PostgreSQL wordt gekozen vóór degene die met het systeem is geïnstalleerd (vermoedelijk /usr/bin/psql ).



  1. mysql-query - blogposts en opmerkingen met limiet

  2. Wat is er nieuw in PgBouncer 1.6

  3. Probeer LOAD DATA INFILE te doen met REPLACE en AUTO_INCREMENT

  4. Hoe vervang ik NULL door 0 in de query?