/etc/services
권고 일 뿐이며 잘 알려진 포트 목록입니다. 실제로 해당 포트에서 실행되고 있거나 명명 된 서비스가 해당 포트에서 실행된다는 의미는 아닙니다.
PostgreSQL의 경우 사용 가능한 경우 포트 5432를 사용하는 것이 일반적입니다. 그렇지 않은 경우 대부분의 설치 관리자는 다음 사용 가능한 포트 (일반적으로 5433)를 선택합니다.
netstat
도구를 사용하여 실제로 실행중인 항목을 볼 수 있습니다 (OS X, Windows 및 Linux에서 사용 가능하며 명령 행 구문이 세 가지 모두 다름).
이것은 OS, Postgres.app, Homebrew, Macports, EnterpriseDB 설치 프로그램 등에 내장 된 Apple의 고대 버전의 PostgreSQL과 같은 다른 PostgreSQL 패키지의 끔찍한 혼란으로 인해 Mac OS X 시스템에서 더욱 복잡합니다.
결국 사용자는 Pg를 설치하고 하나의 패키지에서 서버를 시작하지만 다른 패키지의 클라이언트 psql
와 libpq
클라이언트를 사용한다는 것 입니다. 일반적으로 Postgres.app 또는 homebrew Pg를 실행 psql
하고 OS와 함께 제공된 것과 연결될 때 발생합니다 . 이것들은 때때로 다른 기본 포트를 가지고있을뿐만 아니라, Mac OS X과 함께 제공된 Pg는 다른 기본 유닉스 소켓 경로를 가지고 있습니다 . 따라서 서버가 같은 포트에서 실행 되더라도 동일한 유닉스 소켓을 듣지 않을 것입니다.
대부분의 Mac 사용자는 tcp / ip를 사용하여이 문제를 해결합니다 psql -h localhost
. 필요한 경우 포트를 지정할 수도 있습니다 (예 :) psql -h localhost -p 5433
. 여러 PostgreSQL 인스턴스가 실행 중일 수 있으므로 select version()
and 를 사용하여 올바른 인스턴스에 연결해야합니다 SHOW data_directory;
.
유닉스 소켓 디렉토리를 지정할 수도 있습니다. 체크 unix_socket_directories
당신이에 연결하여 그 지정하고자하는 PostgreSQL의 인스턴스의 설정 psql -h
예를 psql -h /tmp
.
청소기 솔루션은 시스템을 수정하는 것입니다 PATH
있도록 psql
하고 libpq
실제로 실행중인 PostgreSQL의와 관련 처음에 발견 무슨이다 PATH
. 자세한 내용은 Mac OS X 버전과 설치 한 Pg 패키지에 따라 다릅니다. 저는 Mac을 사용하지 않으며 현재 사용 가능한 시간보다 더 많은 시간을 소비하지 않으면 서 그 측면에서 더 자세한 정보를 제공 할 수 없습니다.
PGPORT
가 정의되어 있는지 확인하십시오 . postgresql.org/docs/current/static/libpq-envars.html