운영 중 이력테이블의 사이즈가 커져서 RDS용량 증가 문제 발생.문제해결방안으로 파티션테이블로 만들고 오래된 하위테이블은 S3로 백업 후 삭제. 1. 파티션 테이블 생성CREATE TABLE IF NOT EXISTS change_history_p( history_sn bigint NOT NULL DEFAULT nextval('g1_system.change_history_p_history_sn_seq'::regclass), ... change_dt timestamp with time zone NOT NULL) PARTITION BY RANGE (change_dt);2. 하위테이블 생성CREATE TABLE change_history_p_y202305 PARTITION OF g1_system..
테이블 목록 조회12SELECT RELNAME AS TABLE_NAME FROM PG_STAT_USER_TABLEScs 컬럼 목록 조회12345SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_CATALOG = '데이터베이스명' AND TABLE_NAME = '테이블명' ORDER BY ORDINAL_POSITION;cs 기본키 조회12345678910SELECT CC.COLUMN_NAME AS COLUMN_NAME FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC ,INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE CC WHERE TC.TABLE_CATALOG = '데이터베이스명' AND TC.TABL..
개발은 설치 후 listen_addresses만 변경하고 쓰고 나머진 기본으로 쓰고 있지만 큰 문제는 없네요. 다만 실 운영은 늘 RDS로 해서 그런지 환경설정할 일이 없었네요. listen_addresses = '*' # 로컬 호스트 밖에서의 접속 허용 shared_buffers = 3GB # 물리 메모리 2/3 ~ 1/4 checkpoint_segments = 128 # 2GB redo 로그, 9.4 이하에서 max_wal_size = 2GB # 2GB redo 로그, 9.5 이상에서 min_wal_size = 2GB # 2GB redo 로그, 9.5 이상에서 wal_level = logical # 일단 최대 자세하게 archive_mode = on # 아카이빙 기능은 켜두고, archive_comm..