데이터베이스 환경 간의 변경사항 이주 개요

데이터베이스 관리자로서 특정 데이터베이스 환경에서 작성된 변경을 다른 데이터베이스 환경으로 자주 이주해야 할 수 있습니다. 예를 들어, 대형 개발 데이터베이스에서 수행된 변경을 공식 테스트 데이터베이스로 승격하는 경우입니다.
다음은 데이터베이스 환경 간의 변경사항 이주 프로세스를 표시합니다.
그림 1. 데이터베이스 환경 간의 변경사항 이주 프로세스
DBA는 개발 데이터베이스를 관찰하여 테스트 데이터베이스와 구별되는 방법을
판별합니다. 그런 다음 DBA는 확인한 변경을 테스트 데이터베이스에
적용합니다.

이 변경 이주 태스크를 수행하려면 사용자는 두 데이터베이스 환경의 차이점을 판별하고 서로 다른 오브젝트만을 변경해야 합니다. 일부 경우 새 테이블이 추가되는 경우에만 차이점을 쉽게 판별할 수 있습니다. 그러나 여러 테이블을 자주 변경하고 테이블이 추가 또는 삭제되며 기본 또는 외부 키가 변경되는 경우에는 차이점을 판별하는 것이 상당히 복잡할 수 있습니다.

다음과 같은 세 가지 방법을 사용하여 한 데이터베이스에서 다른 데이터베이스로 변경을 이주할 수 있습니다.
복사하여 붙여넣기 방법
차이점을 이미 식별했고 이주할 변경이 분명하여 차이점을 자세히 분석할 필요가 없는 경우에는 복사하여 붙여넣기 방법을 사용하십시오. 복사하여 붙여넣기 방법을 사용할 경우 비교 편집기가 표시되지 않습니다. 대신 관리 탐색기 또는 오브젝트 목록에서 특정 데이터베이스에 있는 오브젝트를 다른 데이터베이스로 복사하여 붙여넣기하는 경우 변경 관리 스크립트 편집기가 표시되고 변경은 변경하려는 데이터베이스로 즉시 이주됩니다.
중요사항: 복사하여 붙여넣기 방법은 동일한 데이터베이스의 한 스키마에서 다른 스키마로 오브젝트 및 데이터를 복사하는 작업을 지원하는 유일한 방법입니다.
주: 복사하여 붙여넣기 방법은 선택한 오브젝트에서 필요로 하는 오브젝트도 복사할 수 있는지 여부를 지정할 수 있게 해주는 유일한 방법이기도 합니다. 디폴트로 다른 복사 방법 역시 필수 오브젝트를 복사합니다. 예를 들어, 테이블 A가 테이블 B에 종속되고 테이블 B는 테이블 C에 종속된다고 가정하겠습니다. 이 경우에 테이블 A를 복사하고 필수 오브젝트 복사 체크 박스를 선택하면 테이블 B는 복사되지만 테이블 C는 복사되지 않습니다.
끌어서 놓기 방법
차이점을 이미 식별했고 이주할 변경이 분명하여 차이점을 자세히 분석할 필요가 없고 구조적으로 차이점만 이동하려는 경우 끌어서 놓기 방법을 사용하십시오. 끌어서 놓기를 사용하면 데이터는 보존되지 않습니다. 예를 들어, 특정 데이터베이스에서 다른 데이터베이스로 테이블을 이주하는 경우 테이블의 데이터는 이주 시 보존되지 않습니다.
비교 방법(비교 편집기)
변경이 복잡하여 두 데이터베이스 환경의 차이점을 주의하여 판별해야 하는 경우에는 비교 방법을 사용하는 것이 좋습니다. 비교 방법에서는 비교 편집기가 표시됩니다. 기타 데이터베이스로 이주할 변경이 있는 데이터베이스의 모델이 편집기 왼쪽에 표시됩니다. 변경을 이주할 데이터베이스의 모델이 편집기 오른쪽에 표시됩니다. 변경을 드릴 다운하여 적용하려는 변경만 선택할 수 있습니다.
중요사항: 변경 소스가 데이터베이스 연결이 아닌 실제 데이터 모델 또는 DDL 스크립트 파일인 경우 비교 방법을 사용해야 합니다.

이러한 방법 중 하나를 사용할 경우 변경될 오브젝트를 변경 관리 스크립트 편집기에 표시하며 여기서 데이터베이스를 실제로 변경하는 변경 명령을 생성하여 사용자 정의한 후 실행할 수 있습니다.


피드백