다음을 통해 공유


데이터베이스에서 DACPAC 추출

적용 대상:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceMicrosoft Fabric의 SQL 데이터베이스

추출 프로세스는 데이터베이스 개체 및 관련 인스턴스 수준 요소의 정의를 포함하는 DAC 패키지 파일(.dacpac)을 만듭니다. 예를 들어 .dacpac 파일에는 데이터베이스 사용자에 매핑되는 로그인과 함께 데이터베이스 테이블, 저장 프로시저, 뷰 및 사용자가 포함됩니다. .dacpac 파일을 사용하여 데이터베이스를 SQL Server 또는 Azure SQL Database의 다른 인스턴스에 배포하거나 데이터베이스를 현재 인스턴스의 DAC(데이터 계층 애플리케이션)로 등록할 수 있습니다.

.dacpac 추출하는 옵션은 다음과 같습니다.

  1. SSMS(SQL Server Management Studio)의 데이터 계층 애플리케이션 추출 마법사
  2. SQL Server Data Tools
  3. SqlPackage 명령줄 유틸리티

권한

.dacpac 추출하려면 최소 ALTER ANY LOGIN 및 데이터베이스 범위 VIEW DEFINITION 권한 및 SELECT대한 sys.sql_expression_dependencies 권한이 필요합니다. 데이터베이스_owner 고정 데이터베이스 역할과 securityadmin 고정 서버 역할의 멤버가 모두 되는 경우, .dacpac를 추출할 자격이 있습니다. sysadmin 고정 서버 역할의 멤버 또는 sa이라는 기본 제공 SQL Server 시스템 관리자 계정의 멤버는 .dacpac을 추출할 수도 있습니다.

데이터 계층 애플리케이션 추출 마법사 사용

마법사를 사용하여 DAC 추출하기

  1. 개체 탐색기.dacpac 추출할 데이터베이스가 포함된 인스턴스의 노드를 확장합니다.
  2. 데이터베이스 노드를 확장합니다.
  3. .dacpac 추출할 데이터베이스의 노드를 마우스 오른쪽 단추로 클릭하고, 작업를 가리킨 다음, 데이터 계층 애플리케이션 추출...을 선택합니다.
  4. 마법사 대화 상자를 완료합니다.
    1. 소개 페이지
    2. 데이터 페이지 선택
    3. 속성 설정 페이지
    4. 유효성 검사 및 요약 페이지
    5. 빌드 패키지 페이지

마법사 소개 페이지

이 페이지에서는 데이터 계층 애플리케이션을 추출하는 단계를 설명합니다.

이 페이지를 다시 표시하지 마세요. - 나중에 페이지가 표시되지 않도록 하려면 확인란을 선택합니다.

다음 > - 메서드 선택 페이지로 진행합니다.

취소 - 데이터베이스에서 데이터 계층 애플리케이션을 추출하지 않고 마법사를 종료합니다.

데이터 선택 페이지

DAC(데이터 계층 애플리케이션) 패키지 파일에 포함할 참조 데이터를 선택합니다. DAC 패키지에 데이터를 포함하는 것은 선택 사항입니다. 이 .dacpac 지원되는 모든 데이터베이스 개체의 스키마와 데이터베이스와 관련된 인스턴스 개체를 포함합니다.

DAC 패키지 파일에 최대 10MB의 참조 데이터를 포함할 수 있습니다. 그러나 DAC에 포함할 테이블에는 이미지 또는 varchar(max)같은 BLOB(Binary Large Object) 데이터 형식이 포함되지 않을 수 있습니다. 다른 데이터베이스로 전송하기 위해 더 많은 양의 데이터를 추출하려면 SQL Server Integration Services, 대량 복사 유틸리티 또는 다른 많은 데이터 마이그레이션 기술 중 하나를 사용합니다.

데이터베이스 테이블 - DAC 패키지에 포함할 데이터가 포함된 데이터베이스 테이블 옆의 확인란을 선택합니다. 행이 10,000개 이하인 테이블을 최대 10개까지 선택할 수 있습니다.

속성 설정 페이지

마법사의 이 페이지를 사용하여 DAC(데이터 계층 애플리케이션)를 설명합니다. 이러한 속성은 DAC를 식별하고 다른 속성과 구별하는 데 사용됩니다.

이름 - 이 이름은 DAC를 식별합니다. DAC 패키지 파일의 이름과 다를 수 있으며 애플리케이션을 설명해야 합니다. 예를 들어 데이터베이스가 재무 애플리케이션에 사용되는 경우 DAC Finance의 이름을 지정할 수 있습니다.

버전(x가 숫자인 경우 xx.xx.xx.xx 사용) - DAC의 버전을 식별하는 숫자 값입니다. DAC 버전은 Visual Studio에서 개발자가 작업 중인 DAC 버전을 식별하는 데 사용됩니다. .dacpac 배포되면 버전은 msdb 데이터베이스에 저장되며 나중에 SQL Server Management Studio의 데이터 계층 애플리케이션 노드에서 볼 수 있습니다.

설명: - 선택 사항입니다. DAC에 대해 설명합니다. .dacpac 배포되면 설명이 msdb 데이터베이스에 저장되고 나중에 Management Studio의 데이터 계층 애플리케이션 노드에서 볼 수 있습니다.

DAC 패키지 파일에 저장(파일 이름의 .dacpac 확장명 포함): - DAC를 DAC 패키지 파일에 .dacpac 확장명을 사용하여 저장합니다. 찾아보기 단추를 선택하여 파일의 이름과 위치를 지정합니다.

기존 파일 덮어쓰기 - 이름이 같은 파일이 이미 있는 경우 DAC 패키지 파일을 바꾸려면 이 확인란을 선택합니다.

유효성 검사 및 요약 페이지

이 페이지에서 마법사는 모든 데이터베이스 개체가 DAC(데이터 계층 애플리케이션)에서 지원되는지 확인합니다. 또한 데이터베이스 개체의 종속성을 확인하여 DAC에 성공적으로 포함될 수 있는 개체 집합을 확인합니다. 그런 다음 유효성 검사 보고서를 표시하고 이 마법사에서 선택한 옵션을 요약합니다. 옵션을 변경하려면 이전 선택합니다. DAC 추출을 시작하려면 다음을 선택합니다.

메모

DAC에서 하나 이상의 개체를 지원하지 않는 경우 다음 단추가 비활성화되고 추출 프로세스가 계속되지 않을 수 있습니다. 이러한 경우 지원되지 않는 개체를 제거한 다음 이 마법사를 다시 실행하는 것이 좋습니다.

요약 - 선택한 옵션의 요약이 DAC 속성아래에 나열됩니다. 유효성 검사 결과는 DAC 개체 아래에 나열됩니다. 유효성 검사에서 다음과 같은 세 가지 유형의 결과가 있습니다.

  • DAC에 성공적으로 포함된 개체: 이러한 개체와 그 종속성은 지원되며, DAC에 성공적으로 포함될 수 있습니다.

  • 경고가 있는 개체개체는 DAC에 포함되어 있습니다: 이러한 개체는 지원되지만, DAC에서 지원되지 않는 다른 개체에 의존합니다.

  • DAC포함되지 않은 개체: 이러한 개체는 지원되지 않으며 DAC를 성공적으로 추출하기 전에 데이터베이스에서 제거해야 합니다.

유효성 검사 프로세스는 여러 수준의 종속성을 확인합니다. 예를 들어 저장 프로시저가 지원되지 않는 CLR 데이터 형식을 사용하는 테이블에 의존하는 경우 저장 프로시저는 경고가 DAC에 포함된개체 아래에 나열됩니다.

DAC에서 하나 이상의 개체를 지원하지 않는 경우 다음 단추가 비활성화되고 추출 프로세스가 계속되지 않습니다. 이러한 경우 지원되지 않는 개체를 제거한 다음 이 마법사를 다시 실행하는 것이 좋습니다.

보고서 저장 - 요약의 DAC 개체 노드 아래에 있는 모든 개체를 나열하는 HTML 기반 파일을 저장할 수 있습니다. 이 보고서는 일부 데이터베이스 개체가 DAC에서 지원되지 않는 경우에 유용할 수 있습니다. DAC를 다시 추출하기 전에 보고서를 사용하여 지원되지 않는 개체를 변경하거나 제거합니다.

빌드 패키지 페이지

이 페이지를 사용하여 DAC(데이터 계층 애플리케이션)를 추출할 때 마법사의 진행률을 모니터링할 수 있습니다.

작업 - DAC 패키지 파일 만들기 및 저장 작업 중에 마법사는 SQL Server 데이터베이스에서 DAC를 추출합니다. 그런 다음, DAC 패키지가 메모리에 만들어지고 지정한 위치에 저장됩니다. 결과 열에서 링크를 선택하여 해당 단계의 결과를 확인합니다.

보고서 저장 - 마법사 진행률 결과를 파일에 저장하려면 선택합니다.

마침 - 처리가 완료된 후 또는 오류가 발생한 경우 마법사를 닫도록 선택합니다.