Postgresql Logical backup
- 논리적 백업은 하나의 table만 백업, 복원을 하는 등 유연하다.
- SQL, 압축 형식 등으로 백업이 가능하다.
# sql로 백업
pg_dump -U {USERNAME} {DATABASE_NAME} > {TARGET_SQL_FILE_NAME}
# table만 백업
pg_dump -U {USERNAME} -t {TABLE_NAME} {DATABASE_NAME} > {TARGET_SQL_FILE_NAME}
# 전체를 다 백업
pg_dumpall -U {USERNAME} > {TARGET_SQL_FILE_NAME}
# sql로 복원
psql -U {USERNAME} -d {DATABASE_NAME} < {TARGET_SQL_FILE_NAME}
# 압축 형식으로 백업
pg_dump -U {USERNAME} -F c {DATABASE_NAME} > {TARGET_BACKUP_FILE_NAME}
pg_restore -U {USERNAME} -d {DATABASE_NAME} {TARGET_BACKUP_FILE_NAME}
pg_restore -U {USERNAME} -d {DATABASE_NAME} -t {TABLE_NAME} {TARGET_BACKUP_FILE_NAME}