Регистрация базы данных в качестве приложения уровня данных
С помощью Мастера регистрации приложения уровня данных или скрипта Windows PowerShell создайте определение приложения уровня данных (DAC), описывающее объекты из существующей базы данных, а затем зарегистрируйте это определение в системной базе данных msdb (master в База данных SQL Windows Azure).
Перед началом работы выполните следующие действия. Ограничения и разрешения, Разрешения
Обновление приложения уровня данных с использованием следующих средств: Мастер регистрации приложения уровня данных, PowerShell
Перед началом работы
Процесс регистрации создает определение DAC, которое определяет объекты в базе данных. Сочетание определения DAC и базы данных образует экземпляр DAC. Если база данных регистрируется как DAC на управляемом экземпляре компонента Database Engine, зарегистрированный компонент DAC будет включен в служебную программу SQL Server при следующей передаче набора элементов сбора программы с экземпляра в точку управления служебной программой. После этого приложение уровня данных появится в узле Развернутые приложения уровня данных в окне Среда Management Studio Проводник служебной программы, а соответствующие сведения будут отображаться на странице подробностей Развернутые приложения уровня данных.
Ограничения
Регистрация приложения уровня данных может быть выполнена только для базы данных База данных SQL или SQL Server 2005 с пакетом обновления 4 (SP4) или более поздней версии. Регистрация DAC не может быть выполнена, если приложение DAC уже зарегистрировано для базы данных. Например, если база данных создана при помощи развертывания DAC, нельзя запустить Мастер регистрации приложения уровня данных.
Приложение DAC нельзя зарегистрировать, если база данных содержит объекты, которые не поддерживаются в DAC, или содержат пользователей. Дополнительные сведения о типах объектов, поддерживаемых в DAC, см. в разделе Поддержка приложений уровня данных для объектов и версий SQL Server.
[В начало]
Разрешения
Для регистрации приложения уровня данных в экземпляре компонента Компонент Database Engine требуются по меньшей мере разрешения ALTER ANY LOGIN, разрешения области базы данных VIEW DEFINITION, разрешения SELECT на представление каталога sys.sql_expression_dependencies и членство в предопределенной роли сервера dbcreator. Члены предопределенной роли сервера sysadmin и встроенной учетной записи системного администратора SQL Server (с именем sa) также могут регистрировать приложения уровня данных. Для регистрации приложения уровня данных, не содержащего имен входа, в База данных SQL требуется членство в ролях dbmanager или serveradmin. Для регистрации приложения уровня данных, содержащего имена входа, в База данных SQL требуется членство в ролях loginmanager или serveradmin.
[В начало]
Использование мастера регистрации приложений уровня данных
Регистрация приложения DAC с помощью мастера
В обозревателе объектов разверните узел экземпляра, содержащего базу данных, которую нужно зарегистрировать как DAC.
Разверните узел Базы данных.
Щелкните правой кнопкой мыши базу данных, подлежащую регистрации, выберите пункт Задачи, затем пункт Регистрация приложения уровня данных…
Выполните шаги в диалоговых окнах мастера.
Вводная страница
Страница «Задание свойств»
Страница «Проверка и сводка»
Страница «Регистрация 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 — текущий день.
Готово — завершает работу мастера.
[мастер регистрации]
Регистрация приложения DAC с помощью PowerShell
Регистрация базы данных в качестве приложения уровня данных с использованием метода Register() в скрипте PowerShell
Создайте объект SMO и настройте его на работу с экземпляром, содержащим базу данных, подлежащую регистрации как DAC.
Добавьте переменную, указывающую имя базы данных.
Укажите метаданные для приложения уровня данных, такие как имя, версия и описание приложения уровня данных.
Запустите метод 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()
[В начало]