PostgreSQL | 데이터베이스(Database) | 지정된 데이터베이스에 연결

PostgreSQL에 연결할 때 모든 데이터베이스에 연결하는 방법과 psql에서 현재 연결된 데이터베이스와 다른 데이터베이스에 연결하는 방법에 대해 설명한다.

psql 옵션을 사용하여 연결하는 데이터베이스 지정

psql을 사용하여 PostgreSQL에 연결할 때 연결하는 데이터베이스를 지정하지 않으면 연결하는 역할과 동일한 이름의 데이터베이스에 연결한다.

예를 들어, 다음과 같이 역할로 postgres를 사용하여 연결하는 경우 역할 이름과 같은 postgres 데이터베이스에 연결한다.

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

postgres=#   >>>>>>>>>>>>> 프롬프트에 현재 접속중인 데이터베이스명이 표시된다.

현재 연결된 데이터베이스 이름은 프롬프트에 표시된다.

\c 명령을 사용하여 데이터베이스에 연결

psql을 사용하여 PostgreSQL에 접속한 뒤 현재 연결된 데이터베이스와 다른 데이터베이스에 연결하려면 psql의 메타 명령 중 하나인 \c를 사용한다.

그럼 devkum 데이터베이스에 연결을 시도한다. 다음과 같이 실행한다.

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

postgres=# \c devkuma
접속정보: 데이터베이스="devkuma", 사용자="postgres".
devkuma=#

devkuma 데이터베이스에 연결되었다. 프롬프트에 표시되는 데이터베이스 이름도 devkuma로 변경 되었다. (\c 대신 \connect를 사용할 수도 있다)

현재 연결된 데이터베이스 이름 조회

PostgreSQL에서 제공되는 current_database 함수를 사용하면 현재 연결된 데이터베이스 이름을 조회할 수 있다.

그러면 다음과 같이 실행한다.

devkuma=# select current_database();
 current_database
------------------
 devkuma
(1개 행)


devkuma=#

현재 연결된 데이터베이스인 devkuma가 조회되었다.

여기까지 지정된 데이터베이스에 연결하는 방법에 대해 알아보았다.