오퍼링 > 소프트웨어 테크놀로지 서비스 > 오픈소스 SW > DBMS > 자료실
[FAQ/PostgreSQL] 데이터베이스 혹은 테이블 단위로 백업을 하려면 어떻게 해야 하나요?
2021.02.19
Question
필요에 따라 데이터베이스 혹은 테이블 단위로 백업을 하고 싶습니다.
어떻게 해야 하나요?
Answer
pg_dump 명령어를 사용하시면 데이터베이스 혹은 테이블 단위로 백업을 할 수 있습니다.
우선 데이터베이스 단위로 백업을 하시고자 하는 경우, pg_dump 명령어 뒤에 백업하고자 하는 데이터베이스의 이름을 명시함으로서 원하는 데이터베이스를 백업할 수 있습니다.
pg_dump를 사용하여 백업을 하는 경우, 백업 내용은 화면으로 출력이 되기 때문에 리디렉션을 사용해서 파일로 저장해야 합니다.
혹은 -f 옵션을 사용하여 백업 내용을 저장할 파일명을 지정할 수 있습니다.
만약 특정 테이블만 백업하고 싶다면 -t 옵션을 사용하면 됩니다.
반대로 특정 테이블만 제외하고 싶다면 -T 옵션을 사용하면 됩니다.
또한 특정 포맷으로 백업하고 싶다면 -F 옵션을 사용하면 됩니다.
- 텍스트 포맷
- tar 포맷
- 사용자 지정 포맷
텍스트 포맷으로 백업을 한 경우는 psql을 사용해서 복원할 수 있습니다.
또한 tar 포맷이나 사용자 지정 포맷을 사용한 경우에는 pg_restore를 사용해서 복원하시면 됩니다.
더 자세한 내용은 https://www.postgresql.org/docs/current/app-pgdump.html 를 참고해 주시기 바랍니다.