다음을 통해 공유


DAC(데이터 계층 애플리케이션) 개요

적용 대상: SQL Server, Azure SQL Database, Azure SQL Database, Azure SQL Managed Instance, Microsoft Fabric의 SQL Database

DAC(데이터 계층 애플리케이션)는 사용자의 데이터베이스와 연결된 모든 SQL Server 개체(예: 테이블, 뷰 및 로그인을 포함한 인스턴스 개체)를 정의하는 논리 데이터베이스 엔터티입니다. 데이터 계층 애플리케이션은 전체 데이터베이스 모델의 자체 포함 단위이며 .dacpac 패키지와 .bacpac 패키지 모두에서 이식 가능합니다. Tooling support for data-tier applications enable developers and database administrators to apply .dacpac and .bacpac files to new or existing databases or generate new files from existing databases.

운영

BACPAC operations

.bacpac 파일 형식은 기본적으로 데이터베이스 스키마와 데이터베이스에 저장된 데이터를 캡슐화하는 관련 아티팩트입니다. .bacpac 데이터베이스 모델의 개체는 Azure SQL Database의 노출 영역으로 제한됩니다. .bacpac 주 사용 사례는 데이터베이스를 한 서버에서 다른 서버로 이동하거나 로컬 서버에서 클라우드 데이터베이스를 마이그레이션하고 기존 데이터베이스를 개방형 형식으로 보관하는 것입니다.

SqlPackage 이식성 설명서데이터베이스 이식성에 대해 자세히 알아보세요.

DACPAC operations

.dacpac 데이터 계층 애플리케이션 패키지는 SQL 데이터베이스 프로젝트의 빌드 아티팩트이며 포괄적인 데이터베이스 수명 주기 관리 및 DevOps 전략의 일부로 사용할 수 있습니다. 데이터는 기본적으로 .dacpac 포함되지 않지만 라이브 SQL Server 또는 Azure SQL Database에서 .dacpac 추출할 때 사용자 테이블의 데이터를 포함하도록 선택할 수 있습니다. SQL Database 프로젝트 워크플로 및 데이터베이스 개발 수명 주기의 필수적인 부분으로 .dacpac 파일은 여러 작업에 사용됩니다. 기본 작업은 다음과 같습니다.

  • 추출 - 사용자가 데이터베이스를 .dacpac로 추출할 수 있습니다. For more information, see SqlPackage extract and Extract a DAC From a Database.
  • Deploy/Publish - the user can deploy a .dacpac to a host server. 기존 데이터베이스에 배포가 완료되면 데이터베이스와 DAC 간의 차이가 동적으로 계산되고 증분 업데이트로 적용됩니다. "게시"라는 용어는 종종 "배포"와 상호 교환하여 사용됩니다. 자세한 내용은 SqlPackage 게시 참조하고 데이터 계층 애플리케이션 배포.

이러한 기능은 SqlPackage CLI, SQL Server Management Studio, Azure Data Studio 및 SQL Server Data Tools에서 찾을 수 있습니다.

게시 및 추출 외에도 dac 등록 기능을 활용하여 시스템 메타데이터에서 데이터베이스 모델을 추적할 수도 있습니다.

  • 등록 - 사용자가 데이터베이스를 데이터 계층 애플리케이션으로 등록할 수 있습니다. 레지스터는 시스템 메타데이터에 데이터베이스 스키마의 현재 상태 표현을 저장합니다.
  • 등록 취소 - 이전에 DAC로 등록된 데이터베이스를 등록 취소할 수 있습니다.
  • 업그레이드 - .dacpac사용하여 데이터베이스를 업그레이드할 수 있습니다.

데이터 계층 애플리케이션 도구

데이터 계층 애플리케이션에 대한 도구 지원을 통해 개발자와 데이터베이스 관리자는 그래픽 및 명령줄 인터페이스 모두에서 .dacpac.bacpac 파일을 사용할 수 있습니다. 릴리스된 도구 외에도 데이터 계층 애플리케이션 API는 .NET 개발 및 데이터베이스 수명 주기 사용자 지정을 위한 DACFx(데이터 계층 애플리케이션 프레임워크) 사용할 수 있습니다.

DACPAC 및 BACPAC 패키지

다음 도구는 .dacpac.bacpac 형식을 지원합니다.

이러한 도구를 사용하여 데이터베이스를 .dacpac으로 추출하거나 .bacpac으로 내보낼 수 있습니다. 반대로 .bacpac 새 데이터베이스로 가져오거나 새 데이터베이스 또는 기존 데이터베이스에 .dacpac 게시할 수 있습니다.

DACPAC 및 SQL 프로젝트

다음 도구는 SQL 데이터베이스 프로젝트를 편집하는 것 외에도 .dacpac 파일 형식을 지원합니다.

이러한 도구에서 개발자는 연결되지 않은 클라이언트 쪽 개발 환경에서 데이터베이스를 디자인할 수 있습니다. SQL 프로젝트 도구 문서에서 자세히 알아보세요.