본문 바로가기

DB/PostgreSQL

[PostgreSQL] 개요

728x90
반응형

 

PostgreSQL은 확장 가능성 및 표준 준수를 강조하는 "객체-관계형 DB 관리 시스템(ORDBMS)"의 하나이다.

 

BSD 허거권으로 배포되며 오픈소스 개발자 및 관련 회사들이 개발에 참여하고 있다.

 

소형 단일 어플리케이션에서부터 동시 접속 사용자가 있는 대형 인터넷 어플리케이션(데이터웨어하우스,...)까지 여러 부하를 관리할 수 있다.

 

데이터 세트의 크기에 상관없이 데이터를 관리하는 데 도움이 되는 다양한 기능이 포함되어 있다.

  • 데이터 유형 - 정수, 숫자, 문자열, 부울, 날짜/시간, 배열, JSON, Key-Value, 다각형,사용자 정의,...
  • 데이터 무결성 - PK, FK,...
  • 동시성, 성능 - 인덱싱, 고급 인덱싱, ...
  • 신뢰성, 재해 복구 - Logging, 복제, 특정 시점 복구,...
  • 보안 - 인증,...
  • 확장성 - 저장 함수 및 프로시저, 절차적 언어, SQL/JSON 생성자, 테이블을 위한 맞춤형 스토리지 인터페이스
  • 국제화, 텍스트 검색 - ICU 데이터 정렬을 통한 국제 문자 집합 지원, 전체 텍스트 검색, 대소문자와 악센트를 구분하지 않는 데이터 정렬

 

 

확장성도 뛰어나다

  • 자신만의 데이터 유형 정의
  • 사용자 정의 함수
  • 다양한 프로그래밍 언어로 코드 작성(C,C++, Python,...)

 

 

PostgreSQL 사용을 위해 설치를 하는 방법도 있지만 편의성을 위해 Docker를 사용해 DB 서버를 생성하겠다.

docker pull postgres:14.0

 

이미지를 받아오고 실행한다.

docker run -p 5432:5432 --name postgres-server \
-e POSTGERES_PASSWORD=qwer1234 \
-e TZ=Asia\Seoul \
-e POSTGRES_USER=admin1 \
-e POSTGRES_DB=test \
-v /Users/pupba/Documents/postgresql/db \
-e POSTGRES_HOST_AUTH_METHOD=trust \
-d postgres:14.0

 

DBMS 프로그램을 사용하거나 Shell에서 확인 가능하다.

 

 

기본명령어

\l or \list : 현재 PostgreSQL 서버에 있는 데이터베이스 목록 조회

 

\c or \connect [database_name] : 지정된 데이터베이스에 연결

 

\dt or \d [table_name] : 현재 데이터베이스에 있는 테이블 목록 조회, [table_name] 지정 시 해당 테이블의 자세한 정보 확인

 

\du or \du+ : 현재 PostgreSQL 서버에 있는 사용자 목록 조회, +를 붙히면 자세한 정보 포함

 

\q or \quit : PostgreSQL 명령어 인터페이스 종료

728x90
반응형

'DB > PostgreSQL' 카테고리의 다른 글

[PostgreSQL] Python과 연결하여 제어  (0) 2024.02.25
[PostgreSQL] DDL, DML, DCL  (0) 2024.02.24