| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
- ogg-01028
- 19c tde
- pgcrypto
- PostgreSQL Admin
- dblink 삭제
- PostgreSQL Backup and Recovery
- oracle error
- multitenant
- table lock 조치 방법
- PostgreSQL Install
- Archive delete
- PostgreSQL Parameter
- ogg 설치 방법
- PostgreSQL Parameter 설정 방법
- Linux
- pg_dumpall
- oracle
- 23ai
- Goldengate
- db upgrade
- replicat
- ogg 구성
- sql문 전체 출력 방법
- 다른계정에서 dblink 삭제방법
- ogg 23ai
- psql 복구
- pg_basebackup
- OGG
- sql문 짤릴 때
- PostgreSQL 아키텍처
- Today
- Total
인성장
[PostgreSQL] 스키마 관리 (생성, 삭제 등) 본문
스키마 관리
PostgreSQL의 Schema 개념은 Oracle의 Schema 개념과 조금 다릅니다. Oracle의 Schema는 오브젝트를 가진 User를 의미하는 반면, PostgreSQL에서는 Table의 집합을 Schema라고 표현하며 이 Schema는 하나의 Database를 논리적으로 나누는 개념이라 볼 수 있습니다. 여러 User가 하나의 Schema 안에 Table을 생성할 수 있다는 의미인 것입니다.
스키마 생성
CREATE SCHEMA [IF NOT EXISTS] [schema_name] AUTHORIZATION [user_name];
CREATE SCHEMA testsch AUTHORIZATION postgres;
스키마 이름 수정
ALTER SCHEMA [schema_oldname] RENAME TO [schema_newname];
ALTER SCHEMA testsch RENAME TO newsch;
스키마 소유자 변경
ALTER SCHEMA [schema_name] OWNER TO [username];
ALTER SCHEMA newsch OWNER TO newowner;
스키마 조회 순서 확인
SHOW SEARCH_PATH;
SEARCH_PATH 일시적용
SET SEARCH_PATH TO Schema1, Schema2, ...;
SET SEARCH_PATH TO bbb, aaa;
SEARCH_PATH 영구적용
ALTER ROLE [username] SET SEARCH_PATH = Schema1, Schema2, ...;
ALTER ROLE postgres SET SEARCH_PATH = aaa, bbb;
SEARCH_PATH 초기화
ALTER ROLE [username] RESET SEARCH_PATH;
ALTER ROLE postgres RESET SEARCH_PATH;
스키마 삭제 방법
DROP SCHEMA [schema_name] [CASCADE | RESTRICT];
DROP SCHEMA aaa CASCADE;
* 기본값은 RESTRICT, CASCADE 옵션을 지정하면 Schema 하위에 연결 된 객체를 모두 강제 삭제하므로 사용에 주의