Na Ubuntu 14.04 zrobiłem to, aby uzyskać najnowsze posty:
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade
Następnie zainstalowałem wersję 9.4:
sudo apt-get install postgresql-9.4
Wygląda jednak na to, że mam teraz trzy wersje:
sudo service postgresql stop
* Stopping PostgreSQL 9.3 database server [ OK ]
* Stopping PostgreSQL 9.4 database server [ OK ]
* Stopping PostgreSQL 9.5 database server [ OK ]
Jak mogę zachować tylko 9.4 i odinstalować pozostałe? Dzięki
AKTUALIZACJA:
Zgodnie z sugestiami w komentarzach odinstalowałem 9.3 i 9.5.
Ale kiedy to zrobię:
sudo service postgresql status
9.3/main (port 5432): down
9.4/main (port 5434): online
9.5/main (port 5433): down
Jak dotąd tak dobrze, ale kiedy przejdę na postgres:
sudo su postgres
i zrobić psql, pojawia się błąd:
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
14.04
postgresql
Houman
źródło
źródło
sudo apt-get remove postgresql-9.3
że usunie 9.3 (po wyłączeniu serwera 9.3)Odpowiedzi:
Różne wersje PostgreSQL znajdują się w pakietach postgresql-9. *.
Więc powinieneś usunąć swoje dwa pakiety:
Następnie powinieneś usunąć niepotrzebne foldery konfiguracji:
I z folderu / var / lib /, jeśli masz:
Mam nadzieję, że ci to pomoże.
źródło
Dodanie odpowiedzi bardzo późno, ale może pomóc ludziom tutaj.
Krótka odpowiedź: błąd wskazuje, że postgres jest skonfigurowany na niewłaściwym (nie domyślnym) porcie. Użyj właściwego portu
Długa odpowiedź: po zainstalowaniu wielu wersji Postgresql wszystkie zaczęły uruchamiać klastry Postgres na innym porcie. W swojej produkcji, są następujące wersje Postgres działa:
9.3 --> 5432
,9.4 -->5434
,9.5 --> 5433
.Możesz odinstalować inne wersje, używając
sudo apt-get purge postgresql-9.x
gdzie9.x
jest twoja wersja, jednak w twoim przypadku wersja (9.4), która była obecna w twoim systemie, jest skonfigurowana do działania na porcie 5434. Zatem błądIs the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
doskonale wskazuje, że psql domyślnie próbuje połączyć się z portem,5432
który nie ma już załączone postgresy.Dwa rozwiązania tutaj :
psql -p 5434
np. Opcji portu (-p / - port) w komendzie psql.port
wartość konfiguracji serwera postgres,/etc/postgresql/9.5/main/postgresql.conf
aby działała na 5432. Nie zapomnij zrestartować postgres po zmianie.źródło