Регистрация базы данных в качестве приложения уровня данных

Применяется к:SQL ServerAzure SQL DatabaseAzure, управляемому экземпляру SQL Azure

Используйте мастер регистрации приложений уровня данных или скрипт Windows PowerShell для создания определения приложения уровня данных (DAC), описывающего объекты в существующей базе данных, и зарегистрируйте определение DAC в msdb системной базе данных (masterв базе данных SQL Azure).

Перед началом

Процесс регистрации создает определение DAC, которое определяет объекты в базе данных. Сочетание определения уровня данных и базы данных из экземпляра DAC. Если база данных регистрируется как DAC на экземпляре компонента Database Engine, зарегистрированный компонент DAC будет включен в служебную программу SQL Server при следующей передаче набора элементов сбора программы с экземпляра в точку управления служебной программой. Затем DAC будет присутствовать в узле развернутых приложений уровня данных обозревателя служебной программы Management Studio и сообщается на странице сведений о развернутых приложениях уровня данных.

Ограничения

Регистрация DAC может выполняться только в базе данных в базе данных SQL или SQL Server 2005 (9.x) с пакетом обновления 4 (SP4) или более поздней версии. Регистрация DAC не может быть выполнена, если DAC уже зарегистрирован для базы данных. Например, если база данных была создана путем развертывания приложения уровня данных, не удается запустить мастер регистрации приложений уровня данных.

Невозможно зарегистрировать DAC, если база данных содержит объекты, которые не поддерживаются в DAC или содержат пользователей. Дополнительные сведения о типах объектов, поддерживаемых в DAC, см. в разделе DAC Support For SQL Server Objects and Versions.

Разрешения

Для регистрации DAC в экземпляре ядра СУБД требуется по крайней мере разрешение ALTER ANY и разрешения VIEW VIEW DEFINITION области базы данных, разрешения SELECT на sys.sql_expression_dependenciesроль сервера и членство в предопределенных ролях сервера dbcreator . Члены предопределенной роли сервера sysadmin и встроенной учетной записи системного администратора SQL Server (с именем sa ) также могут регистрировать приложения уровня данных. Регистрация DAC, которая не содержит имена входа в базе данных SQL, требует членства в ролях dbmanager или serveradmin . Для регистрации DAC, содержащего имена входа в базе данных SQL, требуется членство в ролях loginmanager или serveradmin .

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

Регистрация приложения DAC с помощью мастера

  1. В обозревателе объектовразверните узел экземпляра, содержащего базу данных, которую нужно зарегистрировать как DAC.

  2. Разверните узел Базы данных .

  3. Щелкните правой кнопкой мыши базу данных, подлежащую регистрации, выберите пункт Задачи, затем пункт Регистрация приложения уровня данных…

  4. Выполните шаги в диалоговых окнах мастера.

    1. Вводная страница

    2. Страница «Задание свойств»

    3. Страница «Проверка и сводка»

    4. Страница «Регистрация DAC»

Вводная страница

На этой странице описаны шаги регистрации приложения уровня данных.

Больше не показывать эту страницу. — установите флажок, чтобы остановить отображение страницы в будущем.

Далее > — переходит на страницу "Задание свойств ".

Отмена — работа мастера завершается без регистрации DAC.

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

Страница «Задание свойств»

Используйте эту страницу, чтобы указать свойства уровня DAC, например имя и версию приложения.

Имя приложения. — Строка, указывающая имя, используемое для идентификации определения DAC, поле заполняется именем базы данных.

Версия. — числовое значение, определяющее версию DAC. Версия DAC используется в среде Visual Studio для определения версии DAC, над которой работают разработчики. При развертывании приложения уровня данных версия хранится в msdb базе данных и может позже просматриваться в узле приложений уровня данных в SQL Server Management Studio.

Описание. — необязательно. Текст, поясняющий назначение DAC. При развертывании приложения уровня данных описание хранится в msdb базе данных и позже можно просмотреть в узле приложений уровня данных в Management Studio.

<Назад — возвращается на страницу "Введение".

Далее > — проверяет, можно ли создать DAC из объектов в базе данных и отобразить результаты на странице "Проверка и сводка ".

Отмена — работа мастера завершается без регистрации DAC.

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

Страница «Проверка и сводка»

Эта страница используется для просмотра действий, выполняемых мастером при регистрации DAC. Страница переходит через три состояния при проверке возможности построения DAC из объектов базы данных.

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

Получение объектов

Получение объектов сервера и базы данных. — отображается индикатор развития процесса получения мастером всех необходимых объектов из базы данных и экземпляра компонента Database Engine.

< Предыдущая — возвращает вас на страницу "Задать свойства ", чтобы изменить записи.

Далее > — регистрирует DAC и отображает результаты на странице регистрации DAC .

Отмена — работа мастера завершается без регистрации DAC.

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

Проверка объектов

ПроверкаschemaName.ObjectName. — Отображает индикатор хода выполнения, так как мастер проверяет зависимости извлеченных объектов и проверяет, что они все допустимые объекты для DAC. SchemaName.ObjectName указывает, для какого объекта в данный момент выполняется проверка.

< Предыдущая — возвращает вас на страницу "Задать свойства ", чтобы изменить записи.

Далее > — регистрирует DAC и отображает результаты на странице регистрации DAC .

Отмена — работа мастера завершается без регистрации DAC.

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

Сводка

Следующий параметр будет использоваться для регистрации DAC. — отображает отчет о свойствах и объектах, включенных в DAC.

Сохранить отчет — сохранить копию отчета о проверке в HTML-файл. Папка по умолчанию является папкой SQL Server Management Studio\DAC Packages , вложенной в папки Documents рабочего каталога учетной записи пользователя Windows.

< Предыдущая — возвращает вас на страницу "Задать свойства ", чтобы изменить записи.

Далее > — регистрирует DAC и отображает результаты на странице регистрации DAC .

Отмена — работа мастера завершается без регистрации DAC.

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

Страница «Регистрация DAC»

Эта страница сообщает об успешном или неуспешном завершении регистрации.

Регистрация DAC — сообщает об успешном или неуспешном завершении каждого действия, выполненного для регистрации DAC. Просмотрите эти сведения, чтобы выяснить результаты каждого действия. Любое действие, возникщее с ошибкой, имеет ссылку в столбце "Результат ". Выберите эту ссылку, чтобы просмотреть отчет об ошибках, относящихся данному действию.

Сохранить отчет — сохранить отчет о регистрации в HTML-файл. В этом файле содержится отчет о состоянии каждого из действий, в том числе все выданные сообщения об ошибках. Папка по умолчанию является папкой SQL Server Management Studio\DAC Packages , вложенной в папки Documents рабочего каталога учетной записи пользователя Windows. Имя файла находится в формате <DACPackageName_RegisterDACReport_yyyymmdd.html, где <DACPackageName>> — имя развертываемого пакета, гггг = текущий год, мм = текущий месяц и dd = текущий день.

Готово — завершает работу мастера.

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

Регистрация приложения DAC с помощью PowerShell

Регистрация базы данных в качестве приложения уровня данных с использованием метода Register() в скрипте PowerShell

  1. Создайте объект SMO и настройте его на работу с экземпляром, содержащим базу данных, подлежащую регистрации как DAC.

  2. Добавьте переменную, указывающую имя базы данных.

  3. Укажите метаданные для приложения уровня данных, такие как имя, версия и описание приложения уровня данных.

  4. Запустите метод Register с использованием указанных ранее данных.

Пример (PowerShell)

В следующем примере база данных с именем MyDB регистрируется как DAC.

## Set a SMO Server object to the default instance on the local computer.
CD SQLSERVER:\SQL\localhost\DEFAULT
$srv = get-item .
  
## Specify the database to register as a DAC.
$dbname = "MyDB"
  
## Specify the DAC metadata.
$applicationname = "MyApplication"
$version = "1.0.0.0"
$description = "This DAC defines the database used by my application."
  
## Register the DAC.
$registerunit = New-Object Microsoft.SqlServer.Management.Dac.DacExtractionUnit($srv, $dbname, $applicationname, $version)
$registerunit.Description = $description
$registerunit.Register()

См. также