sql >> Databáze >  >> RDS >> PostgreSQL

Problém se socketem PostgreSQL Mountain Lion

Podle chybové zprávy psql příkaz, který se objeví jako první v $PATH/tmp jako pevně zakódovaný výchozí adresář soketu unix.

Protože skutečný adresář je ve skutečnosti /var/pgsql_socket , měli byste to říct explicitně, spíše než se spoléhat na výchozí:

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

Totéž platí pro další příkazy na straně klienta, jako je createdb , dropdb , createuser ...

Pokud nechcete zadat -h pokaždé jej lze vložit do PGHOST proměnná prostředí.

Někteří lidé to také řeší pomocí TCP spojení s localhost místo použití adresáře soketu Unix.

Hlavní příčinou tohoto problému by bylo, že po instalaci PostgreSQL na Mac OS X má systém dvě různé instance klientské sady postgres (libpq knihovna, psql a další související nástroje), jeden, který je součástí MacOS a druhý, který je dodáván s instalačním programem PostgreSQL.

Další metodou je tedy změna $PATH takže psql nainstalovaný pomocí PostgreSQL je vybrán před tím, který je nainstalován se systémem (pravděpodobně /usr/bin/psql ).



  1. Chyba syntaxe Postgres na nebo blízko IF

  2. ORDER BY Poddotaz pro převod GROUP BY na JOIN

  3. Jak vyberete pole varchar2 ve formátu 'HH24:MI:SSxFF6' jako INTERVAL HOUR TO SECOND(6)?

  4. MySQL pomalý dotaz s připojením, i když EXPLAIN ukazuje dobrý plán