Inscrire une base de données en tant que DAC

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Utilisez l’Assistant Inscrire une application de la couche Données ou un script Windows PowerShell pour générer une définition DAC (Data-Tier Application) qui décrit les objets d’une base de données existante et inscrivez la définition DAC dans la msdb base de données système (masterdans Azure SQL Database).

Avant de commencer

Le processus d'inscription crée une définition de la DAC qui définit les objets de la base de données. Combinaison de la définition DAC et de la base de données à partir d’une instance DAC. Si vous inscrivez une base de données comme une DAC sur une instance du moteur de base de données, la DAC inscrite est incorporée dans l’Utilitaire SQL Server la prochaine fois que le jeu d’éléments de collecte de l’utilitaire est envoyé de l’instance au point de contrôle de l’utilitaire. La DAC sera ensuite présente dans le nœud Applications de la couche Données déployées de l’Explorateur utilitaire Management Studio et signalée dans la page des détails des applications de la couche Données déployées.

Limitations et restrictions

L’inscription DAC ne peut être effectuée que sur une base de données dans SQL Database, ou sur SQL Server 2005 (9.x) Service Pack 4 (SP4) ou version ultérieure. L’inscription DAC ne peut pas être effectuée si une DAC est déjà inscrite pour la base de données. Par exemple, si la base de données a été créée en déployant une DAC, vous ne pouvez pas exécuter l’Assistant Inscription d’application de la couche Données.

Vous ne pouvez pas inscrire une DAC si la base de données contient des objets qui ne sont pas pris en charge dans une DAC ou des utilisateurs contenus. Pour plus d'informations sur les types d'objets pris en charge dans une DAC, consultez DAC Support For SQL Server Objects and Versions.

Autorisations

L’inscription d’une DAC dans une instance du moteur de base de données nécessite au moins des autorisations ALTER ANY sign in and database scope VIEW DEFINITION, SELECT permissions on sys.sql_expression_dependencies, and membership in the dbcreator fixed server role. Les membres du rôle serveur fixe sysadmin ou le compte d’administrateur système intégré de SQL Server nommé sa peuvent également inscrire une DAC. L’inscription d’une DAC qui ne contient pas de connexions dans SQL Database nécessite l’appartenance aux rôles dbmanager ou serveradmin . L’inscription d’une DAC qui contient des connexions dans SQL Database nécessite l’appartenance aux rôles loginmanager ou serveradmin .

Utiliser l’Assistant Inscrire une application de la couche Données

Pour inscrire une DAC à l'aide d'un Assistant

  1. Dans l' Explorateur d'objets, développez le nœud pour l'instance qui contient la base de données à inscrire en tant que DAC.

  2. Développez le nœud Bases de données .

  3. Cliquez avec le bouton droit sur la base de données à inscrire, pointez sur Tâches, puis sélectionnez Inscrire en tant qu’application de la couche Données.

  4. Renseignez les boîtes de dialogue de l'Assistant :

    1. Page Introduction

    2. Page Définir les propriétés

    3. Page Validation et résumé

    4. Page Inscrire la DAC

Page Introduction

Cette page décrit les étapes de l'inscription d'une application de la couche Données.

Ne plus afficher cette page. - Activez la case à cocher pour empêcher l’affichage de la page à l’avenir.

Suivant > : passe à la page Définir les propriétés .

Annuler : termine l’Assistant sans inscrire une DAC.

Utilisation de l'Assistant Inscrire l'application de la couche Données

Page Définir les propriétés

Utilisez cette page pour spécifier des propriétés au niveau de la DAC telles que le nom de l'application et sa version.

Nom de l’application. - Chaîne qui spécifie le nom utilisé pour identifier la définition DAC, le champ a été rempli avec le nom de la base de données.

Version. - Valeur numérique qui identifie la version de la DAC. La version de la DAC est utilisée dans Visual Studio pour identifier la version de la DAC sur laquelle les développeurs travaillent. Lors du déploiement d’une DAC, la version est stockée dans la base de données et peut être vue ultérieurement sous le nœud Applications de la msdbcouche Données dans SQL Server Management Studio.

Description. - Facultatif. Texte qui explique l'objectif de la DAC. Lors du déploiement d’une DAC, la description est stockée dans la base de données et peut être consultée ultérieurement sous le nœud Applications de la msdbcouche Données dans Management Studio.

< Précédent : vous renvoie à la page Introduction .

Suivant > : vérifie qu’une DAC peut être générée à partir des objets de la base de données et affiche les résultats dans la page Validation et Résumé .

Annuler : termine l’Assistant sans inscrire la DAC.

Utilisation de l'Assistant Inscrire l'application de la couche Données

Page Validation et résumé

Utilisez cette page pour passer en revue les actions effectuées par l’Assistant lors de l’inscription de la DAC. La page passe par trois états alors qu'elle vérifie qu'une DAC peut être générée à partir des objets de la base de données.

Utilisation de l'Assistant Inscrire l'application de la couche Données

Récupérer des objets

Récupération d'objets de bases de données et de serveurs. - Affiche une barre de progression au fur et à mesure que l'Assistant récupère tous les objets requis de la base de données et de l'instance du moteur de base de données.

< Précédent : retourne la page Définir les propriétés pour modifier vos entrées.

Suivant > : inscrit la DAC et affiche les résultats dans la page Inscrire la DAC .

Annuler : termine l’Assistant sans inscrire la DAC.

Utilisation de l'Assistant Inscrire l'application de la couche Données

Valider des objets

Vérificationde SchemaName.ObjectName. : affiche une barre de progression lorsque l’Assistant vérifie les dépendances des objets récupérés et vérifie qu’ils sont tous des objets valides pour une DAC. nom_schéma.nom_objet identifie l’objet en cours de vérification.

< Précédent : retourne la page Définir les propriétés pour modifier vos entrées.

Suivant > : inscrit la DAC et affiche les résultats dans la page Inscrire la DAC .

Annuler : termine l’Assistant sans inscrire la DAC.

Utilisation de l'Assistant Inscrire l'application de la couche Données

Résumé

Le paramètre suivant sera utilisé pour inscrire votre DAC. - Affiche un rapport des propriétés et des objets inclus dans la DAC.

Enregistrer le rapport : sélectionnez ce bouton pour enregistrer une copie du rapport de validation dans un fichier HTML. Le dossier par défaut est un dossier SQL Server Management Studio\DAC Packages dans le dossier Documents de votre compte Windows.

< Précédent : retourne la page Définir les propriétés pour modifier vos entrées.

Suivant > : inscrit la DAC et affiche les résultats dans la page Inscrire la DAC .

Annuler : termine l’Assistant sans inscrire la DAC.

Utilisation de l'Assistant Inscrire l'application de la couche Données

Page Inscrire la DAC

Cette page signale la réussite ou l'échec de l'inscription.

Inscription de la DAC : signale la réussite ou l’échec de chaque action entreprise pour inscrire la DAC. Examinez les informations pour déterminer la réussite ou l'échec de chaque action. Toute action qui a rencontré une erreur a un lien dans la colonne Result . Sélectionnez le lien pour consulter le rapport de d'erreur de cette action.

Enregistrer le rapport : sélectionnez ce bouton pour enregistrer le rapport d’inscription dans un fichier HTML. Le fichier signale l'état de chaque action, notamment toutes les erreurs générées par chacune des actions. Le dossier par défaut est un dossier SQL Server Management Studio\DAC Packages dans le dossier Documents de votre compte Windows. Le nom de fichier est au format <DACPackageName>_RegisterDACReport_yyyymmdd.html, où< DACPackageName> est le nom du package en cours de déploiement, aaaa = l’année en cours, mm = le mois actuel et dd = le jour actuel.

Terminer : met fin à l’Assistant.

Utilisation de l'Assistant Inscrire l'application de la couche Données

Inscrire une DAC à l'aide de PowerShell

Pour inscrire une base de données comme DAC à l’aide de la méthode Register() dans un script PowerShell

  1. Créez un objet serveur SMO et définissez-le sur l'instance qui contient la base de données à inscrire comme une DAC.

  2. Ajoutez une variable qui spécifie le nom de la base de données.

  3. Spécifiez les métadonnées pour la DAC, par exemple le nom de la DAC, la version et la description.

  4. Exécutez la méthode Register avec les informations spécifiées ci-dessus.

Exemple (PowerShell)

L'exemple suivant inscrit une base de données nommée MyDB comme une 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()

Voir aussi