내보내기(0) 인쇄
모두 확장

방법: DAC BACPAC를 사용하여 Azure SQL 데이터베이스로 데이터베이스 마이그레이션

업데이트 날짜: 2014년 4월

기존 데이터베이스에서 BACPAC를 내보내어 해당 BACPAC 파일을 SQL Server BLOB 서비스 계정에 저장한 다음, 이 BACPAC를 로 가져오는 방식으로 Microsoft Azure SQL 데이터베이스 데이터베이스에서 스키마와 데이터를 모두 마이그레이션할 수 있습니다.

저자: Shaun Tinline-Jones
검토자: Adam Mahood

DAC(데이터 계층 응용 프로그램)는 데이터 계층 개체를 개발, 배포 및 관리하는 자체 포함 단위입니다. DAC를 사용하면 데이터 계층 개발자 및 데이터베이스 관리자가 데이터베이스 개체 및 인스턴스 개체를 비롯한 Microsoft SQL Server 개체를 DAC 패키지(.dacpac 파일)라는 단일 엔터티로 패키지할 수 있습니다. BACPAC 형식은 표준 DAC 패키지 콘텐츠 외에도 BACPAC 관련 메타데이터 및 JSON(JavaScript Object Notation)으로 인코딩된 테이블 데이터를 포함하도록 DAC 패키지 형식을 확장합니다. SQL Server 데이터베이스를 BACPAC 파일로 패키지한 후 이 파일을 사용하여 스키마와 테이블 데이터를 모두 Microsoft Azure SQL 데이터베이스로 마이그레이션할 수 있습니다.

DAC 패키지와 BACPAC는 대상 시나리오가 서로 다릅니다.

  1. BACPAC에는 스키마와 데이터가 모두 들어 있지만 스키마 수정을 위해 데이터베이스 프로젝트로 가져올 수 없습니다. BACPAC의 기본 용도는 한 데이터베이스 서비스의 데이터베이스를 다른 곳(데이터베이스 엔진 또는 Microsoft Azure SQL 데이터베이스의 인스턴스)으로 이동하는 것입니다. BACPAC를 사용하여 기존 데이터베이스를 개방형 형식으로 보관할 수도 있습니다. 이러한 용도로 사용하는 경우 데이터베이스에서 스키마를 변경할 필요가 없는 마이그레이션용으로 적합합니다.

  2. DAC 패키지에는 스키마 정보만 들어 있지만 추가 개발 작업을 위해 해당 패키지를 SSDT 데이터베이스 프로젝트로 가져올 수 있습니다. DAC 패키지의 기본 용도는 데이터베이스 스키마를 개발, 테스트 및 프로덕션 환경으로 배포하는 것입니다.

Azure SQL 데이터베이스용 가져오기 및 내보내기 서비스는 Microsoft Azure SQL 데이터베이스에 있는 데이터베이스와 Azure BLOB 서비스 간에 BACPAC 파일을 직접 가져오거나 내보낼 수 있습니다. Azure SQL 데이터베이스에 대한 가져오기 및 내보내기 서비스는 요청 제출에 사용할 수 있는 공용 REST 끝점을 제공합니다. Azure 플랫폼 포털에는 SQL 데이터베이스에 대한 가져오기 및 내보내기 서비스 호출용 인터페이스가 있습니다.

[Top]

DAC BACPAC는 Microsoft Azure SQL 데이터베이스에서 지원되지 않는 개체를 처리하는 데 데이터베이스 변경이 없는 마이그레이션에만 사용할 수 있습니다. 이러한 변경이 필요한 경우 중 다음 중 하나를 고려하십시오.

  1. Microsoft Azure SQL 데이터베이스로 배포하기 전에 DAC 패키지 및 SSDT(SQL Server Data Tools)를 사용하여 데이터베이스 스키마를 수정하고 필요한 변경을 수행합니다. 자세한 내용은 방법: DAC 패키지를 사용하여 Windows Azure SQL 데이터베이스로 데이터베이스 마이그레이션를 참조하십시오.

  2. DAC BACPAC를 내보내기 전에 원본 데이터베이스에서 모든 스키마 변경을 수행합니다.

BACPAC를 내보내고 가져오는 데 사용할 수 있는 지원되지 않는 명령 프롬프트 유틸리티를 작성하는 SQL DAC 예제 프로젝트가 있습니다. SQL DAC 예제 프로젝트는 CodePlex에서 다운로드할 수 있습니다. 이 프로젝트에는 DAC 프레임워크가 필요합니다. 프로젝트에서 빌드된 유틸리티 사용에 대한 자세한 내용은 DAC Framework 클라이언트 쪽 도구 참조를 참조하십시오.

[Top]

DAC BACPAC를 사용하려면 DAC Framework라는 클라이언트 DAC 소프트웨어를 설치해야 합니다. DAC Framework는 SQL Server Data Tools 및 SQL Server 유틸리티(예: SQL Server Management Studio)에 포함되어 있습니다. Azure SQL 데이터베이스로 작업할 경우 SQL Server Data Tools 및 SQL Server 2012에 포함된 DAC Framework 버전을 사용하는 것이 좋습니다. 또한 SQL Server 2012 기능 팩에서 다음 세 가지 패키지를 설치하여 이전 버전의 DAC Framework를 업그레이드할 수도 있습니다.

  • Microsoft SQL Server 2012용 Microsoft System CLR Types

  • Microsoft SQL Server 2012 Transact-SQL 스크립트 DOM

  • Microsoft SQL Server 2012 데이터 계층 응용 프로그램 프레임워크

DAC Framework 버전과 SQL Server 버전 간 호환성에 대한 자세한 내용은 SQL Server 개체 및 버전에 대한 DAC 지원을 참조하십시오.

[Top]

데이터베이스를 SQL Server에서 Azure SQL 데이터베이스로 마이그레이션하는 단계는 다음과 같습니다.

  1. 기존 SQL Server 데이터베이스에서 BACPAC 파일 내보내기

    SQL Server Management Studio의 SQL Server 2012 버전에 있는 데이터 계층 응용 프로그램 내보내기 마법사를 사용하여 BACPAC 파일을 BLOB 서비스 계정으로 직접 내보낼 수 있습니다. 이 마법사를 실행하려면 개체 탐색기에서 작업을 선택하고 나서 데이터 계층 응용 프로그램 내보내기를 선택합니다. 내보내기 설정 페이지에서 Azure에 저장 컨트롤을 사용하여 BLOB 서비스 위치를 지정합니다. 필요한 경우 SQL DAC 예제 유틸리티를 사용할 수 있습니다. SQL Server에서 BACPAC 내보내기에 대한 자세한 내용은 데이터 계층 응용 프로그램 내보내기를 참조하십시오.

    BACPAC를 저장소로 내보내려면 저장소 계정이 있어야 합니다.

  2. BACPAC 파일을 Azure BLOB 서비스로 이동

    SQL DAC 예제를 사용하여 BACPAC를 컴퓨터의 로컬 파일로 내보냈으며 을 사용하여 BACPAC를 ssSDS로 가져오려는 경우 BACPAC 파일을 BLOB 계정으로 이동합니다. Azure Management Platform Tool 또는 Microsoft Codename “Data Transfer”를 사용하여 파일을 복사할 수 있습니다.

    SQL DAC 예제를 사용하여 Microsoft Azure SQL 데이터베이스로 가져오려는 경우 BACPAC 파일을 BLOB 서비스로 복사할 필요가 없습니다.

  3. BACPAC 가져오기 Microsoft Azure SQL 데이터베이스

    내보낸 BACPAC를 가져와서 Microsoft Azure SQL 데이터베이스에 데이터베이스를 만들 수 있습니다. 을 사용하여 BLOB 서비스에 저장된 BACPAC를 가져올 수 있습니다. 리본에서 가져오기를 선택하여 저장소 계정에서 데이터베이스 가져오기 창을 시작합니다. 필요에 따라 SQL DAC 예제를 사용하여 저장된 BACPAC를 컴퓨터의 로컬 파일로 가져올 수 있습니다.

[Top]

표시:
© 2014 Microsoft