PostgreSQL | psql을 사용하여 PostgreSQL에 연결 | PostgreSQL 연결과 해제

psql을 사용하여 PostgreSQL에 접속하는 방법과 PostgreSQL에서 연결을 해제하는 방법에 대해 설명한다.

PostgreSQL에 연결하기

psql는 컨멘드 라인 기반으로 PostgreSQL에 작성된 데이터베이스에 연결하거나 테이블에서 데이터를 검색 등을 할 수 있는 도구이다. Windows 환경에서 psql을 이용하려면 명령 프롬프트에서 해야 한다.

먼저 명령 프롬프트를 시작한다.

psql을 사용하여 PostgreSQL에 연결하려면 다음과 같이 실행한다. (실제로는 PostgreSQL로 작성된 지정된 데이터베이스에 연결한다).

psql -h {호스트명} -p {포트 번호} -U {사용자명} -d {데이터베이스명}

호스트명은 PostgreSQL가 실행중인 호스트명 또는 IP 주소이다. 기본값은 localhost 이기에 로컬 호스트에서 실행중인 PostgreSQL에 접속하는 경우는 생략 할 수 있다.

포트 번호는 PostgreSQL가 사용하는 포트 번호이다. 기본 값이 PostgreSQL 설치시 설정한 값인 5432로 되어 있기에 다른 포트 번호를 사용하는 경우가 아니라면 생략 할 수 있다.

사용자명은 PostgreSQL을 설치 한 직후에는 수퍼 유저로 postgres 역할 밖에 생성되지 않으므로 -U postgres로 지정한다. 사용자명을 생략하게 되면 OS의 사용자명이 사용된다.

※ PostgreSQL에서는 일반적으로 사용자라는 것과 그룹이라는 것을 정리하여 역할이라고 부른다.

데이터베이스 명에는 연결할 데이터베이스 이름을 지정한다. 생략하게 되면 사용자명과 동일한 이름의 데이터베이스에 연결한다. (postgres 데이터베이스는 자동으로 생성되며, postgres 역할로 접속한 경우는 postgres 데이터베이스에 연결된다.)

모든 지정하여 PostgreSQL에 접속하는 경우는 다음과 같다.

psql -h localhost -p 5432 -U postgres -d postgres

locahost이라면 호스트명 지정을 생략할 수 잇고, 포트 번호를 생략 할 수도 있다. 그리고 사용자명과 같은 데이터베이스에 연결한다면 데이터베이스명을 생략 할 수 있으므로, 다음과 같이 실행해도 위에 동일하다.

psql -U postgres

그러면 실제로 실행해 보자.

C:\>psql -U postgres
postgres 사용자의 암호:

연결하려고 하는 사용자의 로그인 비밀번호를 입력을 위해 대기가 상태가 된다. postgres의 비밀번호는 PostgreSQL 설치시 지정한 것이다. 입력을 한 후에 [Ener] 키를 누른다. 제대로 입력 하였다면 다음과 같은 화면이 나타난다.

C:\>psql -U postgres
postgres 사용자의 암호:
psql (12.2)
도움말을 보려면 "help"를 입력하십시오.

postgres=#

연결 중에는 “데이터베이스명=#“으로 표시된다. 여기서는 postgres 데이터베이스에 연결되어 있기에 “postgres=#“로 표시되고 있다.

psql을 종료하고 PostgreSQL에서 연결 해제

psql을 종료하고 PostgreSQL에서 연결 해제하려면 다음과 같이 수행한다.

\q
C:\>psql -U postgres
postgres 사용자의 암호:
psql (12.2)
도움말을 보려면 "help"를 입력하십시오.

postgres=# \q

C:\>

sql이 종료되고 PostgreSQL에서 연결이 해제되었다.

psql을 사용하여 PostgreSQL에 연결하는 방법과 연결을 해제하는 방법에 대해 설명하였다.