SQL Server 2008R2에는 매우 큰 프로덕션 데이터베이스와 매우 큰 테스트 환경 데이터베이스가 있습니다. 두 데이터베이스 모두 유사한 테이블 구조를 갖지만 사용자 / 로그인 / 권한 / 역할은 다릅니다.
프로덕션 환경에서 한 달에 한 번 테스트 데이터베이스에서 몇 개의 테이블 만 새로 고쳐야합니다.
내가 이것을 계획하고있는 현재의 방법은
- BCP 유틸리티를 사용하여 프로덕션에서 필요한 테이블을 내 보냅니다.
- bcp 내보내기 파일을 테스트 서버에 복사
- Test에서 새로 고치는 모든 테이블에서 인덱스 및 제약 조건을 비활성화하십시오.
- 테스트 데이터베이스 테이블 자르기
- BCP를 사용하여 데이터를 테스트 데이터베이스 테이블로 다시로드하십시오.
- Test에서 인덱스 재 구축 및 제약 조건 재 활성화
이 작은 작업에는이 모든 것이 너무 복잡해 보입니다. 또한 많은 리두를 생성하는 것처럼 보입니다 (t-log에서) 이것을 수행하는 더 좋은 방법이 있습니까?
내가 생각한 또 다른 방법은 프로덕션 환경에서 테스트 환경으로 백업을 복원하는 것입니다. 그러나 내가 가진 문제는 전체 백업이 상당히 클 수 있으며 모든 테이블을 새로 고칠 필요가 없다는 것입니다. 또한 프로덕션 데이터베이스의 사용자 및 보안은 테스트와 다릅니다. 전체 데이터베이스를 복원하면 프로덕션 데이터베이스의 보안 설정으로 덮어 씁니다.