공식문서 : https://www.postgresql.org/
라이센스 : https://www.postgresql.org/about/licence/
DockerHub : https://hub.docker.com/_/postgres
Github : https://github.com/docker-library/postgres (docker에서 PostgreSQL 을 사용할때 git 주소)
초기화 : cmd에서 bin > initdb.exe
데이터가 생성되는 경로를 지정, data 폴더는 자동으로 만들어지고 이미 존재한다면 초기화 실패
-D C:\pgsql[저장위치]\data
-E unicode
--no -locale
생성한 계정 입력
-U postgres
환경변수 설정방법(선택)
환경변수 설정 or psql을 직접 실행 or 콘솔 경로 입력 후 psql 실행
Windows
제어판 ➞ 시스템 ➞ 고급 시스템 설정 ➞ 환경변수 ➞ 시스템 변수의 Path 클릭 후 편집 ➞ 새로 만들기 후 PostgreSQL 설치 주소 입력 및 확인
C:\Program Files\PostgreSQL\12\bin (기본 설치 주소)
- Users/Groups : 사용자 정보 관리
- Databases : 실제 레코드가 저장되는 database 관리
- Tablespaces : Database의 Object가 저장된 파일 시스템의 경로 관리
- Schemas : PostgreSQL 내부에서 Database를 논리적으로 구분하여 관리
- Tables : Row 와 Column으로 구성된 실제 레코드가 저장되는 공간
- Views : 읽기 전용의 가상 테이블로 제한된 정보만 제공하기 위한 공간
psql은 PostgreSQL의 Shell이다.
사용예시
ex) 파이썬 자동화 구현을 위해
- 자동화 전에 생성할 database와 table이 존재하는지 확인
- 장애가 발생한 경우 이상 여부 확인
- 사용자 추가, 삭제 등 관리 목적
- 수작업으로 쿼리 작업을 수행해야 하는 경우: 발생 빈도에 따라 자동화를 권장한다.
PostgreSQL은 무료고 대용량 데이터 처리 가능하다고 해서 익히는데
RDBMS 대신 하둡같은 빅데이터를 도입하는 곳도 많다고 한다.
하둡 같은 분산 시스템 도입을 데이터, 파일은 가능하지만
메타정보, 인덱스 정보 같은 소규모 데이터는 RDBMS가 적합하다고 한다.
오픈 데이터 베이스 소개 및 용도
- MySQL : 단순 트랜잭션 성능 우수, 복잡한 쿼리 성능저하 : 소규모 프로젝트
- PostgreSQL : 복잡한 쿼리의 성능 우수, SQL 표준 준수 , CRUD 성능이 MySQL 보다 저하 : 큰 규모의 비즈니스, 프로젝트
- SQLite : 가볍고 단순, 파일 기반, 멀티작업 불가 : SQL 학습, 단순작업
- Oracle : 대용량, 유료, 대규모 프로젝트
- H2DB : 자바 기반 RDBMS, 서버모드와 임베디드 모드의 인메모리 db 기능 지원, 디스크 기반 테이블 생성, 내장 기반, 가벼움, JDBC API 지원 , 표준 SQL 지원
REFERENCE
'DB > PostgreSQL' 카테고리의 다른 글
[PostgreSQL] 구조 및 이해 (0) | 2022.08.18 |
---|