PostgreSQL
PostgreSQL(포스트그레스큐엘)은 누구나 무료로 쓰는 오픈소스 관계형 데이터베이스예요. 표준 SQL 과 JSON 칸을 함께 다루고, 잘못된 값은 규칙으로 막아 줘요.
목차 보기
PostgreSQL(포스트그레스큐엘)은 누구나 무료로 쓰는 오픈소스 관계형 데이터베이스예요. 규칙을 꼼꼼히 지키는 회계 담당자처럼, 잘못된 값이 들어오면 저장하기 전에 막아 줘요.
글 서순명(솔리드그루 이사 · 퓨쳐인프라 운영) · 2026-10-29 작성 · 예시는 2026-10-29 Windows 11 · PostgreSQL 17.10 컨테이너에서 직접 실행
3줄 요약
PostgreSQL 은 어떻게 생겨났나요?
시작은 1986년 캘리포니아 대학교 버클리의 POSTGRES 연구예요. 1994년 SQL 을 알아듣게 고쳐 Postgres95 가 됐고, 1996년 PostgreSQL 로 이름을 바꿨어요(공식 문서 역사). 이름에 "SQL"이 붙은 이유가 여기 있어요.
공식 위키는 "포스트-그레스-큐-엘"로 읽으라고 안내해요. 어려우면 그냥 "포스트그레스"라고 불러도 된다고 해요. 라이선스는 PostgreSQL License 예요. BSD·MIT 처럼 느슨한 라이선스라 회사 서비스에도 돈 내지 않고 쓸 수 있어요.
PostgreSQL 은 무엇을 잘해요?
- 규칙 지키기 — "가격은 0 이상" 같은 조건(CHECK)을 표에 걸면, 어긋나는 값은 저장 자체를 거부해요.
- 표준 SQL — 2026-10-29 공식 문서 기준 최신 표준 SQL:2023 의 필수 핵심 기능 177개 중 170개 이상을 지원해요.
- JSON 함께 담기 — JSONB 칸에 모양이 제각각인 정보를 넣고, 그 안을 조건으로 검색해요. 색인도 걸 수 있어요.
- 기능 붙이기 — 확장 기능으로 지도 좌표, 벡터 검색 같은 걸 더할 수 있어요.
MySQL·SQLite·MongoDB 와는 뭐가 달라요?
| 구분 | PostgreSQL | MySQL | SQLite | MongoDB |
|---|---|---|---|---|
| 모양 | 표 + JSON 칸 | 표 | 표(파일 하나) | 문서(JSON 비슷) |
| 서버 | 있어요 | 있어요 | 없어요(앱 안에서 동작) | 있어요 |
| 라이선스 | PostgreSQL License(무료) | GPL 무료판 + 상용판 | 퍼블릭 도메인 | SSPL 무료판 + 상용판 |
| 잘 맞는 곳 | 규칙이 많은 서비스, 결제·예약 | 웹사이트·쇼핑몰·워드프레스 | 연습·앱 내부 저장 | 모양이 자주 바뀌는 데이터 |
MySQL 과 PostgreSQL 은 둘 다 SQL 을 써서 기본 문장은 비슷해요. 처음 앱을 만드는 사람이라면 어느 쪽이든 충분해요. 이미 쓰는 툴이나 호스팅이 권하는 쪽을 고르면 돼요.
직접 해 보면 어떻게 나오나요?
2026-10-29 Windows 11 PC 에서 도커로 PostgreSQL 17 컨테이너를 잠깐 띄워 돌렸어요. 이 PC 에 이미 있던 postgres:17-alpine 이미지를 썼고, 끝나면 컨테이너가 사라지게 했어요. 켜고 나서 첫 명령을 받기까지 7,743ms(약 7.7초) 걸렸어요. 아래는 상품 표를 만들고 몇 가지를 시켜 본 결과예요.
$ cat products.sql (일부)
CREATE TABLE products (id SERIAL PRIMARY KEY, name TEXT NOT NULL, price INTEGER CHECK (price >= 0), info JSONB);
SELECT name, price, info->>'카페인' AS 카페인 FROM products WHERE info @> '{"온도": ["ICE"]}';
INSERT INTO products (name, price) VALUES ('잘못된 상품', -100);
SELECT name FROM products WHERE name ILIKE '%라떼%';
$ psql -U postgres -f products.sql (결과 일부)
PostgreSQL 17.10 on x86_64-pc-linux-musl, compiled by gcc (Alpine 15.2.0) 15.2.0, 64-bit
CREATE TABLE
INSERT 0 2
name | price | 카페인
---------------+-------+--------
아메리카노 | 4000 | true
디카페인 라떼 | 5000 | false
(2 rows)
ERROR: new row for relation "products" violates check constraint "products_price_check"
DETAIL: Failing row contains (3, 잘못된 상품, -100, null).
name
---------------
디카페인 라떼
(1 row)
- 메뉴마다 다른 옵션을 JSONB 칸 하나에 넣고,
@>(포함하나요?)로 ICE 가 되는 메뉴만 골랐어요. - 가격이 음수인 상품은 오류와 함께 거절됐어요. 앱 코드가 실수해도 DB 에 엉터리 값이 쌓이지 않아요.
ILIKE는 대소문자를 가리지 않고 찾는 PostgreSQL 전용 말이에요. 다른 DB 에서는 안 통할 수 있어요.
바이브코더는 어디서 PostgreSQL 을 만나요?
바이브코딩 툴 여러 곳이 Supabase 를 데이터베이스로 붙여요. Supabase 공식 문서는 프로젝트마다 완전한 Postgres 데이터베이스가 하나씩 생긴다고 설명해요(Supabase 문서). 그래서 Supabase 에서 만든 표는 PostgreSQL 문법 그대로 다룰 수 있어요.
클로드 코드로 직접 서버를 만들 때도 PostgreSQL 은 무난한 선택이에요.
자주 하는 오해와 주의할 점
- "버전은 아무거나" — 2026-10-29 공식 지원 표 기준 최신은 18.6, 17 은 17.11 이에요. 17 은 2029-11-08 까지 고쳐 줘요. 이 글 실습 이미지는 17.10 이라 한 단계 뒤처져 있었어요. 큰 숫자(17→18)는 바꿀 때 옮기는 작업이 따로 있어요(버전 정책).
- "PostgreSQL 은 무겁다" — 작은 앱도 문제없이 돌아가요. 다만 접속 하나마다 프로세스를 따로 만들어서, 접속이 아주 많으면 메모리를 꽤 써요.
- "JSONB 가 있으니 표가 필요 없다" — 자주 찾고 합계 내는 값은 따로 칸을 만드는 게 좋아요. JSONB 는 모양이 제각각인 나머지 정보용이에요.
퓨쳐인프라에서는 어떻게 쓰나요?
퓨쳐인프라 앱 호스팅에서 앱에 붙이는 데이터베이스로 PostgreSQL 을 고를 수 있어요(MariaDB·MySQL·Redis 도 있어요). DB 를 붙이면 월 2,200원이 더해져 앱 포함 월 7,700원이에요(부가세 포함, 분 단위 계산).
비밀번호는 서버가 만들어 보관하고, 접속 정보는 앱 환경변수로 자동으로 들어가요. 개발·시연용으로는 원클릭 앱에서 PostgreSQL 을 버튼 하나로 띄울 수도 있어요. 다른 DB 와 비교하고 싶다면 데이터베이스 뜻과 SQL 뜻도 함께 보세요.
자주 묻는 질문
PostgreSQL 은 정말 무료예요? 회사 서비스에 써도 돼요?
네. PostgreSQL License 는 BSD·MIT 처럼 느슨한 오픈소스 라이선스라 상업 서비스에도 비용 없이 쓸 수 있어요. 저작권 문구만 남기면 고쳐서 배포해도 돼요. 다만 돌릴 서버 비용은 따로 들어요.
Postgres 와 PostgreSQL 은 같은 거예요?
같은 거예요. Postgres 는 버클리 시절 원래 이름이고, 공식 위키도 줄임말로 Postgres 를 쓰라고 권해요. 명령 이름(psql)이나 기본 계정(postgres)에도 이 이름이 남아 있어요.
PostgreSQL 은 어떻게 설치해요?
공식 사이트에서 운영체제별 설치 파일을 받을 수 있어요. 연습만 할 거라면 도커로 컨테이너를 잠깐 띄우는 방법이 깔끔해요. 이 글의 예시도 그렇게 돌렸어요. 바로 서비스에 쓸 거라면 DB 를 붙여 주는 호스팅을 쓰면 설치를 건너뛸 수 있어요.
psql 은 뭐예요?
PostgreSQL 에 붙어서 SQL 을 치고 결과를 보는 터미널 프로그램이에요. 이 글의 실행 결과도 psql 로 SQL 파일을 실행해서 얻었어요.
관련 용어
- SQL — PostgreSQL 에 일을 시키는 언어
- MySQL — PostgreSQL 과 자주 비교되는 관계형 DB
- 데이터베이스 — DB 종류와 고르는 법
- MongoDB — 문서 모양으로 담는 NoSQL DB
- JSON — JSONB 칸에 담는 데이터 형식
- 도커 — 예시를 돌릴 때 쓴 컨테이너 도구
- 작성: 서순명(솔리드그루 이사 · 퓨쳐인프라 — 국내 IDC 에서 클라우드 서버·앱 호스팅·AI API 를 운영) · 작성일 2026-10-29
- 운영사: 솔리드그루 · 사업자등록번호 875-44-00335 · 서울특별시 구로구 디지털로29길 38, 7층 707호 · 전화 02-6933-6229 · support@futureinfra.ai · 고객센터 · 이용약관
- 한계: 실행 결과는 2026-10-29 Windows 11 PC 한 대에서 PostgreSQL 17.10 컨테이너로 한 번 돌린 값이에요. 시작 시간은 PC 사양에 따라 달라요. 버전·지원 기한은 같은 날 PostgreSQL 공식 버전 정책 페이지 기준이에요.
- 이해관계: 퓨쳐인프라(솔리드그루) 블로그예요. 글 안에 자사 앱 호스팅·데이터베이스 추가 요금 안내가 있어요.
연관 서비스
많이 본 글
-
블로그
무료 도메인 사이트 추천 2026 — 내도메인.한국·DuckDNS 발급 방법
내도메인.한국·DuckDNS 처럼 계속 무료인 주소 10곳을 11월 3일 서울에서 다시 재고(6곳 6ms 안), 발급 순서·구글·네이버 무료 주소·'첫해 무료'의 2년째 값까지 정리했어요. -
블로그
도메인 구매 사이트 추천 2026 — 가비아·후이즈 등 15곳 갱신·이전비 비교
같은 .co.kr 도 등록업체 15곳의 3년 값이 3.8만~8.6만 원이에요(11월 3일 KRNIC 표). 갱신가·이전비·해외 업체 조건, 11월 인상 뒤 가비아 실제 화면, 구매처 확인과 기관이전까지 정리했어요. -
블로그
클로드 MCP·Gemini MCP 연동 방법 2026, MCP 서버 9곳
클로드 MCP(데스크톱·Claude Code)와 Gemini MCP 연동(Gemini CLI·안티그래비티·Gemini 앱·API) 등 9곳의 MCP 서버 연결법을 공식 문서로 정리했어요. 원격 57ms 실측과 오류 해결까지. -
블로그
Gemini 3.9 Flash 나왔나요? 지금 최신은 3.8 Flash — 3.7과 직접 잰 속도·비용
2026년 9월 22일 기준 Gemini 3.9 Flash는 미출시입니다. 최신 3.8 Flash의 사양·가격(2027년 2배 인상)과, 3.7 Flash와 같은 과제로 직접 잰 속도·비용·JSON 형식 준수 차이를 정리했습니다. -
블로그
서버비 한 달 얼마? 방문자 10만 명도 월 3만 2천 원(2026 계산)
월 방문자 1천·1만 명은 1만 4천 원, 10만 명은 3만 2천 원이에요. 요금제별 트래픽 기본 제공량까지 넣어 다시 계산하고 AWS·카페24·가비아·네이버클라우드 값과 숨은 비용을 비교했어요(2026-10-26 확인).
댓글 0
로그인하면 댓글을 남길 수 있습니다.