Posgtres 명령 행 클라이언트 (일반적으로 Linux의 경우 psql)를 설치하려고합니다. MacPorts (postgresql90 및 postgresql90-server)를 통해 postgres를 설치했지만 여전히 클라이언트가 설치되어 있지 않습니다.
MacPorts를 검색했는데 클라이언트에 대한 경로 나 독립적 인 설치를위한 별도의 포트를 찾을 수 없습니다.
psql 명령 줄 클라이언트를 어떻게 설치합니까?
Posgtres 명령 행 클라이언트 (일반적으로 Linux의 경우 psql)를 설치하려고합니다. MacPorts (postgresql90 및 postgresql90-server)를 통해 postgres를 설치했지만 여전히 클라이언트가 설치되어 있지 않습니다.
MacPorts를 검색했는데 클라이언트에 대한 경로 나 독립적 인 설치를위한 별도의 포트를 찾을 수 없습니다.
psql 명령 줄 클라이언트를 어떻게 설치합니까?
답변:
Macports는 각 버전의 패키지 이름에 버전 문자열이 포함 된 여러 버전의 PosgreSQL을 패키지합니다. 따라서 XY가 주요 및 부 PostgreSQL 릴리스 버전 (이 글을 쓰는 시점에서 8.1-9.4 베타)이 연결된 경우 패키지 이름은 다음과 같습니다.
선택한 버전의 설치 만 활성화하면됩니다. "postgresqlXY"패키지 (모든 버전)를 설치하면 "postgresql_select"패키지를 종속성으로 가져 와서 postgresql의 활성 버전을 쿼리 할 수 있습니다.
$ port select --list postgresql
Available versions for postgresql:
none (active)
postgresqlXY
다음과 같이 활성 버전을 지정할 수 있습니다.
$ port select --set postgresql postgresqlXY
Selecting 'postgresqlXY' for 'postgresql' succeeded. 'postgresqlXY' is now active.
즉 (/ 옵션 / 지방 / 빈 / psql의에서 심볼릭 링크 배치 MacPorts의 원인 이다 (/ 옵션 / 지방 / lib 디렉토리 / postgresqlXY / 빈 / psql의 설치 바이너리에하지 않은 당신은 MacPorts를 설치하기 때문에 경로를) 경로):
$ which psql # That created this symlink to the active version:
/opt/local/bin/psql
/ opt / local / bin / psqlXY를 통해 클라이언트 바이너리의 버전 XY에 항상 액세스 할 수 있습니다. 이는 Macports가 무엇을 선택하든 선택하지 않든 상관없이 설치된 각 버전에 대해 유지되는 또 다른 symlink입니다. 버전 XY를 선택하기 전에 있었으며 경로에서 표준 이진 이름을 제거하기 위해 "없음"을 선택해도 마찬가지입니다.
$ port select postgresql none
Selecting 'none' for 'postgresql' succeeded. 'none' is now active.
$ which psql # Not on the path because 'none' is active!
$ which psqlXY # But this is always present:
/opt/local/bin/psqlXY
사람들은 다양한 소프트웨어의 여러 버전에 즉시 액세스 할 수 있어야하고, Macports는이 선택 메커니즘과 해당하는 software_select 패키지를 종속성으로 사용하여 약 50 개의 인기있는 예제의 여러 버전을 패키징하여 쉽게 만들 수 있습니다. 목록을보십시오 :
$ port search _select
http://www.istarelworkshop.com/2011/01/04/snow_leopard_development_server_postgresql 에서 답을 찾았습니다 .
일반적인 MacPorts 설치와 마찬가지로 PostgreSQL 명령 줄 도구의 경로는 시스템에 알려지지 않았으므로 / etc / paths에 / opt / local / lib / postgresql84 / bin을 추가합니다.
MacPorts는 실행 파일을 설치하지만 경로에 넣지 않는 것 같습니다.
최신 psql 클라이언트를 설치했는지 확인하십시오 (예제에서는 93).
sudo port install postgresql93
그런 다음 ~/.bash_profile
파일에
PATH=/opt/local/lib/postgresql93/bin/:$PATH
export PATH
port select --list postgresql
하고 같은 것을 선택 하십시오 sudo port select --set postgresql postgresql95
. 그런 다음 /opt/local/bin
에서 PATH에 있는 심볼릭 링크를 찾을 수 있습니다.