Postgres 9.4가 실행 중이지만 "서비스 상태"가 이를 보고합니다.

Postgres 9.4가 실행 중이지만 "서비스 상태"가 이를 보고합니다.

Ubuntu 14.04.3 LTS 및 Postgres 9.4의 새로운 설치( apt-get install postgresql-9.4, 멋진 것은 없음). Postgres는 pg_ctl startpostgres 사용자 에 의해 시작되었습니다 .

status 명령은 서비스가 다운된 것으로 보고합니다.

[root@box ~]# service postgresql status
9.4/main (port 5432): down

그러나 서버는~이다달리기; 5432에서 수신 대기하고 있는 것을 볼 수 있으며 psql을 사용하여 연결할 수 있습니다.

[root@box ~]# netstat -a -n -p | grep 5432
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      19377/postgres
tcp        0      0 127.0.0.1:5432          127.0.0.1:45724         ESTABLISHED 20280/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45725         ESTABLISHED 20281/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45732         ESTABLISHED 20288/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45726         ESTABLISHED 20282/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45729         ESTABLISHED 20285/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45723         ESTABLISHED 20279/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45730         ESTABLISHED 20286/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45731         ESTABLISHED 20287/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45728         ESTABLISHED 20284/postgres: ice
tcp        0      0 127.0.0.1:5432          127.0.0.1:45727         ESTABLISHED 20283/postgres: ice
unix  2      [ ACC ]     STREAM     LISTENING     4295677  19377/postgres      /var/run/postgresql/.s.PGSQL.5432

psql 연결:

[postgres@box~]$ psql
Password:
psql (9.4.5)

postgres=# \conninfo
You are connected to database "postgres" as user "postgres" via socket in "/var/run/postgresql" at port "5432".

Postgres를 서비스로 실행하려면 다른 작업을 수행해야 합니까?

답변1

요약하자면, 타사 저장소를 추가하고 Ubuntu 소프트웨어 센터에서 제공하는 것보다 최신 버전의 프로그램을 설치했으며 실행 가능한 실행 파일을 얻었지만 이를 시스템에 통합하기 위한 일부 "접착" 스크립트가 누락되었습니다. 추가된 저장소를 제거한 다음 패키지 목록을 업데이트하는 것이 좋습니다.

sudo apt-get update

그런 다음 postgresql을 설치합니다(제공되는 최신 버전을 얻습니다).

sudo apt-get install postgresql postgresql-contrib

보다https://help.ubuntu.com/community/PostgreSQL

이제 14.04에서는 여러 postgresql 버전 설치가 허용됩니다. 하지만 설치되는 버전이 최신 버전일 것이라고 확신합니다. 기존 버전이 최신 버전이고 실제로 "예상" 방식으로 설정되지 않은 경우 어떤 일이 발생하는지 잘 모르겠습니다. 가장 좋은 경우는 이를 선택하여 할당된 포트(5432)로 실행하고 소프트웨어 센터의 "새" 버전을 다음 포트(5433)에 배치하는 것입니다. 두 버전 모두 동시에 실행될 수 있지만 다른 포트가 필요합니다. 9.3 설치에 9.4에서 이미 사용 중인 5432 포트가 제공되고 9.4가 무시되는 경우 최소한 9.4를 이동/추가할 예상 위치의 9.3 템플릿이 있습니다. /etc/init.d/postgresql에 대한 /etc/rc2.d/S19postgresql 링크 및 /usr/share/postgresql/9.4와 같은 것

그런 다음 포트를 할당하는 conf 파일을 추적하고 9.4 버전이 기본 5432(원하는 경우)인지 확인하세요.

답변2

내 경우에는 postgres 서버를 시작했지만 상태가 'down'너무 좋았습니다. 클러스터를 시작해야 pg_ctlcluster 9.4 main start작동 'online'했습니다.

도움이 되길 바랍니다.

관련 정보