우선, 저는 DBA 나 sysadmin이 아닌 개발자입니다. 부드럽게 해주세요 :)
단일 사용자 작업으로 데이터베이스에서 복잡한 변경 사항을 트리거하는 응용 프로그램 워크 플로를 작업 중입니다. 일부 테이블에는 수백 개의 레코드를 만들고 다른 테이블에는 수백 개의 레코드를 업데이트하는 것 등이 있습니다. )에이 작업이 수행됩니다. 복잡성으로 인해 다른 테스트를 실행하기 전에 모든 변경 사항을 수동으로 되 돌리는 것은 매우 어렵습니다. 대부분의 개발 시간 동안 워크 플로 끝에 거의 "ROLLBACK"문을 삽입 할 수 있지만 변경 내용을 커밋 할 때 실제 테스트해야합니다.
작업 할 프로덕션 데이터베이스의 로컬 사본이 있습니다. 필자의 경우 모든 변경 사항을 취소하기 위해 스크립트를 작성하는 것보다 테스트 간 덤프 및 복원이 더 빠릅니다. 더 빠르지 만 여전히 속도가 느려집니다 (노화 노트북에서 복원하는 데 약 20 분이 걸립니다). 데이터베이스의 현재 상태에 대한 스냅 샷을 저장 한 다음 신속하게 복원 할 수있는 방법이 있습니까?
시스템에서 유일한 사용자임을 보장하며 루트 액세스 권한이 있습니다. tar 및 gzip을 사용할 때 데이터베이스 덤프는 ~ 100MB입니다. PostgreSQL 버전은 8.3입니다.
유용한 아이디어에 미리 감사드립니다.