PostgreSQL 란?
PostgreSQL은 오픈 소스 객체-관계형 데이터베이스 관리 시스템(ORDBMS)으로, 많은 기능과 뛰어난 성능, 유연성을 제공하는 데이터베이스이다.
[주요 특징]
- 객체-관계형 데이터베이스: PostgreSQL은 전통적인 관계형 데이터베이스 기능 외에도 데이터 유형 확장, 상속, 다형성을 지원하여 객체지향적인 데이터 모델을 활용할 수 있다.
- ACID 준수: PostgreSQL은 원자성(Atomicity), 일관성(Consistency), 격리성(Isolation), 지속성(Durability)이라는 ACID 속성을 준수한다. 이를 통해 데이터의 무결성과 안정성을 보장한다.
- 확장성: 사용자 정의 데이터 타입, 함수, 연산자, 인덱스 방법 등을 추가할 수 있어 시스템의 확장성이 뛰어나다.
- 병행 제어: MVCC(Multi-Version Concurrency Control)를 지원하여 여러 사용자가 동시에 데이터베이스에 접근할 수 있도록 한다. 이를 통해 성능과 데이터 일관성을 유지한다.
- JSON 및 JSONB 지원: PostgreSQL은 JSON와 JSONB 데이터 타입을 지원하여 비구조화된 데이터 저장 및 쿼리가 가능하다.
- 지리정보 시스템(GIS): PostGIS라는 확장 모듈을 통해 지리적 데이터를 저장하고 쿼리할 수 있는 기능을 지원한다.
아래의 사이트에서 좀 더 자세한 정보를 확인할 수 있다.
https://aws.amazon.com/ko/compare/the-difference-between-mysql-vs-postgresql/
PostgreSQL 다운로드
사이트에 접속해서 맞는 운영 체제를 선택하고 (필자의 경우 Windows)
사용하려는 버전과 OS를 클릭하면 설치 파일이 다운로드 된다.
설치 파일을 다운로드 받은 후 실행하여 NEXT 클릭
설치 시에 비밀번호도 설정해줘야 한다.
기본 포트 번호는 5432 이다.
Stack Builder 부분 체크 해제 하고 Finish 클릭
설치가 완료되면 검색에서 'SQL' 이라고 검색하면 SQL Shell(psql) 이 보이면 설치 완료
SQL Shell 사용해보기
Server [localhost]: Enter
Database [postgres]: Enter
Port [5432]: Enter
Username [postgres]: Enter
postgres 사용자의 암호: 설치 시 설정한 비밀번호 입력
select * from pg_tables;
PostgreSQL 주요 명령어
데이터베이스 관련 명령어
- 데이터베이스 생성: CREATE DATABASE database_name;
- 데이터베이스 삭제: DROP DATABASE database_name;
- 데이터베이스 목록 보기: \l
- 데이터베이스에 연결: \c database_name;
테이블 관련 명령어
- 테이블 생성: CREATE TABLE table_name (column1 datatype, column2 datatype);
- 테이블 삭제: DROP TABLE table_name;
- 테이블 구조 보기: \d table_name;
- 모든 테이블 목록 보기: \dt
데이터 조작 명령어
- 데이터 삽입: INSERT INTO table_name (column1) VALUES (value1);
- 데이터 조회: SELECT column1 FROM table_name WHERE condition;
- 데이터 업데이트: UPDATE table_name SET column1 = value1 WHERE condition;
- 데이터 삭제: DELETE FROM table_name WHERE condition;
인덱스 및 제약 조건
- 인덱스 생성: CREATE INDEX index_name ON table_name (column_name);
- 인덱스 삭제: DROP INDEX index_name;
- 제약 조건 추가: ALTER TABLE table_name ADD CONSTRAINT constraint_name CHECK (condition);
- 제약 조건 삭제: ALTER TABLE table_name DROP CONSTRAINT constraint_name;
사용자 및 권한 관리
- 사용자 생성: CREATE USER username WITH PASSWORD 'password';
- 사용자 삭제: DROP USER username;
- 권한 부여: GRANT SELECT ON table_name TO username;
- 권한 회수: REVOKE ALL PRIVILEGES ON table_name FROM username;
기타 유용한 명령어
- 현재 데이터베이스 확인: SELECT current_database();
- 현재 사용자 확인: SELECT current_user;
- SQL 쿼리 종료: \q
pgAdmin 4
pgAdmin은 PostgreSQL 데이터베이스 관리 시스템을 위한 공식 오픈 소스 관리 도구다. 사용자가 PostgreSQL 데이터베이스를 관리하고 쿼리를 실행할 수 있는 그래픽 사용자 인터페이스(GUI)를 제공한다.
pgAdmin을 켠 후, Servers를 누르면 비밀번호를 입력하라고 나오는데, 처음 설치 시 설정한 비밀번호 입력
◆ DB 생성하기
[Object] - Create - Database 를 클릭하면 DB를 생성할 수 있다.
[참고]
https://nazzang19.tistory.com/30
https://sujinisacat.tistory.com/5
https://brotherdan.tistory.com/48
다음 내용
[SQL] PostgreSQL: pg Admin 사용하기
이전 내용 [SQL] PostgresSQL 다운로드 하기PostgresSQL 란? PostgreSQL은 오픈 소스 객체-관계형 데이터베이스 관리 시스템(ORDBMS)으로, 많은 기능과 뛰어난 성능, 유연성을 제공하는 데이터베이스이다. [주
puppy-foot-it.tistory.com
'프로그래밍 및 기타 > SQL' 카테고리의 다른 글
[SQL] PostgreSQL: pg Admin 사용하기 (0) | 2025.04.23 |
---|---|
[SQL] MySQL 설치하기 (0) | 2025.03.13 |
[SQL] DBeaver 다운로드 받기 (1) | 2025.02.04 |
ORACLE SQL DEVELOPER 다운로드 (0) | 2024.02.25 |
Oracle DB 다운받기 (0) | 2024.02.25 |