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

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

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

Компонент DAC можно зарегистрировать в среде база данных SQL Azure или в базе данных, размещенной на SQL Server 2005 с пакетом обновления 4 (SP4) или более поздней версии. Что касается управляемого экземпляра компонента Database Engine, то зарегистрированный компонент приложения уровня данных будет включен в служебную программу SQL Server при следующей отправке набора сбора программы из экземпляра в точку управления служебной программой. После этого приложение уровня данных появится в узле Развернутые приложения уровня данных в окне Проводник служебной программы среды Management Studio, а соответствующие сведения будут отображаться на странице подробностей Развернутые приложения уровня данных.

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

Ограничения

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

Приложение DAC нельзя зарегистрировать, если база данных содержит объекты, которые не поддерживаются в DAC. Дополнительные сведения о типах объектов, поддерживаемых в DAC, см. в разделе Поддержка приложений уровня данных для объектов и версий SQL Server.

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

Создайте файл RegisterDAC.ps1, содержащий следующий код.

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

    ## Set a SMO Server object to the default instance on the local computer.
    CD SQLSERVER:\SQL\localhost\DEFAULT
    $srv = get-item .
    
  2. Добавьте код для указания базы данных. В данном примере указана база данных MyDB.

    ## Specify the database to register as a DAC.
    $dbname = "MyDB"
    
  3. Добавьте код для указания метаданных для DAC. В данном примере задаются имя, версия и описание DAC.

    ## Specify the DAC metadata.
    $applicationname = "MyApplication"
    $version = "1.0.0.0"
    $description = "This DAC defines the database used by my application."
    
  4. Добавьте код для запуска метода Register с использованием данных, указанных выше.

    ## Register the DAC.
    $registerunit = New-Object Microsoft.SqlServer.Management.Dac.DacExtractionUnit($srv, $dbname, $applicationname, $version)
    $registerunit.Description = $description
    $registerunit.Register()
    

Запустите RegisterDAC.ps1 из сеанса PowerShell, в котором была выполнена загрузка оснасток SQL Server PowerShell, или с помощью программы командной строки sqlps.

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

В среде Management Studio можно запустить «Мастер регистрации приложения уровня данных» следующими способами.

  • В Обозревателе объектов щелкните правой кнопкой мыши узел базы данных, выберите пункт Задачи, далее выберите пункт Регистрация приложения уровня данных…

Этот мастер создает определение приложения уровня данных, описывающее объекты из базы данных, представленные выбранным в иерархии обозревателя объектов узлом. Определение DAC хранится в системной базе данных msdb (база данных master в SQL Azure). Экземпляр DAC образуется сочетанием описания DAC и базы данных. Сведения об экземпляре DAC передаются в служебную программу SQL Server при следующей передаче набора элементов сбора программы в точку управления служебной программой. Сведения можно просмотреть в узле «Развернутые приложения уровня данных» окна проводника служебной программы.

Щелкните ссылку в приведенном ниже списке, чтобы открыть в мастере подробности, относящиеся к этой странице.

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

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

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

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

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

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

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

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

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

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

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

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

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

Описание. — необязательно. Текст, поясняющий назначение DAC. При развертывании 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> — имя развертываемого пакета, yyyy — текущий год, mm — текущий месяц и dd — текущий день.

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

Журнал изменений

Обновленное содержимое

Добавлен раздел, посвященный использованию PowerShell.