[PostgreSQL] 특정 데이터베이스에 접속하기

2025. 2. 16. 04:11·개발 (Development)/PostgreSQL

PostgreSQL 데이터베이스에 특정 DB(test_db)로 접속하는 방법을 소개합니다. 다양한 환경에서 손쉽게 접속할 수 있는 명령어와 코드 예제를 정리했습니다.


1. psql 명령어 사용 (터미널)

터미널에서 psql 명령어를 사용해 PostgreSQL에 접속할 수 있습니다.

기본 형식:

psql -h [호스트] -p [포트] -U [사용자명] -d test_db

예시:

psql -h localhost -p 5432 -U myuser -d test_db
  • -h : 호스트 주소 (기본은 localhost)
  • -p : 포트 번호 (기본은 5432)
  • -U : 사용자명
  • -d : 데이터베이스 이름 (test_db)

접속 후 프롬프트(test_db=>)가 나타나면 SQL 쿼리를 실행할 수 있습니다.

Tip: PostgreSQL이 설치된 환경에서 psql 명령어를 바로 사용할 수 있습니다.


2. Python을 사용한 접속 (psycopg2 라이브러리)

Python 스크립트에서 test_db에 접속하는 방법입니다.

psycopg2 설치:

pip install psycopg2

Python 코드 예제:

import psycopg2

try:
    conn = psycopg2.connect(
        host="localhost",
        port="5432",
        database="test_db",
        user="myuser",
        password="[비밀번호]"  # 실제 비밀번호는 환경 변수로 관리하세요.
    )
    print("Database connected successfully")

    cur = conn.cursor()
    cur.execute("SELECT version();")
    version = cur.fetchone()
    print("PostgreSQL version:", version)

    cur.close()
    conn.close()

except Exception as e:
    print("Error:", e)

보안 팁: 비밀번호는 코드에 직접 작성하지 말고 환경 변수로 관리하는 것이 좋습니다.

 


3. DBeaver 등 GUI 클라이언트 사용

GUI 클라이언트를 사용하면 데이터베이스에 쉽게 접속할 수 있습니다. 대표적인 툴로는 DBeaver, DataGrip 등이 있습니다.

접속 정보:

  • Host: localhost
  • Port: 5432
  • Database: test_db
  • User: myuser
  • Password: 입력 후 저장하지 않는 것을 권장합니다.

4. PostgreSQL 내부에서 데이터베이스 전환

PostgreSQL에 접속한 후 다른 데이터베이스로 전환할 때는 다음 명령어를 사용합니다:

\c test_db;

참고: \c는 connect의 줄임말로, 이미 PostgreSQL에 접속한 상태에서 데이터베이스를 변경할 때 사용합니다.


5. Docker 환경에서 test_db 접속

Docker 컨테이너를 통해 PostgreSQL에 접속할 경우:

docker exec -it [컨테이너_이름] psql -U myuser -d test_db

팁: Docker 컨테이너 이름은 docker ps 명령어로 확인할 수 있습니다.

반응형

'개발 (Development) > PostgreSQL' 카테고리의 다른 글

[PostgreSQL] ASC 인덱스가 있는데 DESC 인덱스를 추가해도 될까?  (0) 2025.02.16
[PostgreSQL] 쿼리 성능 최적화 과정  (0) 2025.02.16
[PostgreSQL] PostgreSQL에서 중복 데이터가 조회 성능과 인덱스에 미치는 영향  (0) 2025.01.25
[PostgreSQL] 배열 기반 데이터에서 특정 요소의 기울기 계산하기  (0) 2025.01.12
[PostgreSQL] 쿼리 최적화 - ANALYZE  (0) 2025.01.07
'개발 (Development)/PostgreSQL' 카테고리의 다른 글
  • [PostgreSQL] ASC 인덱스가 있는데 DESC 인덱스를 추가해도 될까?
  • [PostgreSQL] 쿼리 성능 최적화 과정
  • [PostgreSQL] PostgreSQL에서 중복 데이터가 조회 성능과 인덱스에 미치는 영향
  • [PostgreSQL] 배열 기반 데이터에서 특정 요소의 기울기 계산하기
LoopThinker
LoopThinker
모르는 것을 알아가고, 아는 것을 더 깊게 파고드는 공간
  • LoopThinker
    CodeMemoir
    LoopThinker
  • 전체
    오늘
    어제
    • 분류 전체보기 (231)
      • 개발 (Development) (165)
        • Algorithm (1)
        • Angular (1)
        • AWS (6)
        • DeepSeek (2)
        • Docker (7)
        • Git (3)
        • Java (34)
        • JavaScript (4)
        • Kafka (5)
        • Kubernetes (4)
        • Linux (7)
        • PostgreSQL (38)
        • Python (31)
        • React (3)
        • TypeScript (3)
        • Vue.js (5)
        • General (11)
      • 데이터 분석 (Data Analysis) (1)
      • 알고리즘 문제 풀이 (Problem Solving.. (27)
      • 자격증 (Certifications) (24)
        • ADsP (14)
        • 정보처리기사 (4)
        • Linux Master (5)
        • SQLD (1)
      • 기술 동향 (Tech Trends) (11)
      • 기타 (Others) (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Vue.js
    리눅스 마스터 2급
    자바
    DevOps
    Linux master
    python
    JSON
    백준알고리즘
    Kubernetes
    deepseek
    ADsP
    백준
    백준자바
    AWS
    javascript
    springboot
    MyBatis
    Kafka
    JPA
    docker
    리눅스 마스터 2급 2차
    오답노트
    데이터분석
    백준온라인저지
    PostgreSQL
    Linux
    timescaledb
    pandas
    java
    Spring boot
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
LoopThinker
[PostgreSQL] 특정 데이터베이스에 접속하기
상단으로

티스토리툴바