Поделиться через


Обзор приложений уровня данных (DAC)

применяется:SQL ServerБазе данных SQL AzureУправляемому экземпляру SQL AzureБазе данных SQL в Microsoft Fabric

Приложение уровня данных (DAC) — это логическая сущность базы данных, которая определяет все объекты SQL Server, такие как таблицы, представления и объекты экземпляров, включая имена входа, связанные с базой данных пользователя. Приложение уровня данных — это самостоятельная единица всей модели базы данных, которая переносится в пакетах .dacpac и .bacpac. поддержка инструментария для приложений баз данных позволяет разработчикам и администраторам баз данных применять .dacpac и .bacpac файлы к новым или существующим базам данных или создавать новые файлы из существующих баз данных.

Операции

Операции BACPAC

Формат файла .bacpac — это связанный артефакт, который по умолчанию инкапсулирует схему базы данных и данные, хранящиеся в базе данных. Объекты в модели базы данных .bacpac ограничены областью поверхности базы данных SQL Azure. Основным вариантом использования .bacpac является перемещение базы данных с одного сервера на другой или перенос базы данных с локального сервера на облачный и архивация существующей базы данных в открытом формате.

Узнайте больше о переносимости базы данных в документации по переносимости SqlPackage .

Операции DACPAC

Пакет приложения уровня данных .dacpac является результатом сборки из проектов SQL-баз данных и может использоваться в рамках управления жизненным циклом баз данных и реализации стратегии DevOps. Данные по умолчанию не включены в .dacpac, но вы можете включить данные из пользовательских таблиц при извлечении .dacpac из динамической базы данных SQL Server или Базы данных SQL Azure. В качестве неотъемлемой части рабочего процесса проекта базы данных SQL и жизненного цикла разработки баз данных .dacpac файлы используются в нескольких операциях. Основными операциями являются:

  • Извлечь — пользователь может извлечь базу данных в .dacpac. Дополнительные сведения см. в разделе SqlPackage extract и извлечение приложения DAC из базы данных.
  • Развернуть,/,, Опубликовать — пользователь может развернуть .dacpac на хост-сервере. Когда развертывание выполняется в существующей базе данных, разница между базой данных и DAC динамически вычисляется и применяется в качестве добавочного обновления. Термин "Публикация" часто используется взаимозаменяемо с "Развертыванием". Например, дополнительные сведения см. в SqlPackage Публиковать и Развертывание приложения уровня данных.

Эти возможности можно найти в интерфейсе командной строки SqlPackage, SQL Server Management Studio, Azure Data Studio и SQL Server Data Tools.

Помимо публикации и извлечения, можно также отслеживать модель базы данных в системных метаданных, используя функцию регистрации dac:

  • Зарегистрировать. Пользователь может зарегистрировать базу данных в качестве приложения уровня данных. Регистрация сохраняет представление текущего состояния схемы базы данных в системных метаданных.
  • отмена регистрации — база данных, ранее зарегистрированная в качестве DAC, может быть отменена.
  • Upgrade — базу данных можно обновить с помощью .dacpac.

Инструменты приложений уровня данных

Поддержка инструментов для приложений уровня данных позволяет разработчикам и администраторам баз данных работать с .dacpac и .bacpac файлами из графических и командных интерфейсов. Помимо выпущенных инструментов, API для приложений уровня данных доступны в платформе приложений уровня данных (DACFx) для .NET-разработки и кастомизации жизненного цикла базы данных.

Пакеты DACPAC и BACPAC

Следующие средства поддерживают форматы .dacpac и .bacpac:

В этих средствах базу данных можно извлечь в .dacpac или экспортировать в .bacpac. И наоборот, .bacpac можно импортировать в новую базу данных или .dacpac можно опубликовать в новой или существующей базе данных.

Проекты DACPAC и SQL

Следующие средства поддерживают формат файла .dacpac в дополнение к редактированию проектов базы данных SQL:

В этих средствах разработчики могут разрабатывать базу данных в несоединяемой клиентской среде разработки. Подробнее о средствах для проектов SQL можно узнать в статье .