상황
- 서버 A에 postgres DB가 설치되어 있고, data도 저장되어 있다.
- 앞으로 같은 postgres DB를 여러 서버에 설치해야한다.
- application 설치할때 postgres DB와 table들은 생성이 되는데, data는 직접 넣어줘야 한다.
- 서버 A와 같은 data를 매번 설치때마다 입력해줘야 한다.
해결
→ 서버 A의 테이블 내용들을 insert 문으로 써서 여러 서버 설치시에 스크립트로 입력한다.
명령어
pg_dump -U [username] -d [databasename] --data-only --column-inserts -t [tablename] > insert_test.dump
—data-only : data 관련 내용만 dump를 뜬다. 이 옵션을 적용하지 않으면 alter table 등의 더 많은 내용이 dump된다.
—column-insert : 이 옵션을 쓰면 table 내용을 INSERT INTO {table name} (column1, column2) VALUES (value1, value2); 와 같은 형식으로 dump한다. 아니면 copy 구문이 적용된다.
-t [table_name]: 이 옵션을 쓰면 특정 table만 dump하고 아니면 모든 table을 dump한다.
더 많은 옵션 : https://www.postgresql.org/docs/current/app-pgdump.html
0 댓글