Partager via


Procédure : supprimer une application de couche Données

Vous pouvez supprimer une application de la couche Données à l'aide de l'Assistant Supprimer l'application de la couche Données ou d'un script Windows PowerShell. Vous pouvez spécifier si la base de données associée doit être conservée, détachée ou supprimée.

Avant de commencer

Lorsque vous supprimez une instance d'application de la couche Données (DAC), vous choisissez l'une des trois options qui spécifient le mode de traitement de la base de données associée à l'application de la couche Données. Les trois options suppriment les métadonnées de définition de la DAC. Les options diffèrent de par ce qu'elles font de la base de données associée à l'application de la couche Données. L'Assistant ne supprime aucun des objets au niveau de l'instance associés à la DAC ou base de données, tels que les connexions.

Option

Actions de base de données

Supprimer l'inscription

La base de données associée reste intacte.

Détacher la base de données

La base de données associée est détachée. L'instance du moteur de base de données ne peut pas référencer la base de données, mais les données et les fichiers journaux sont intacts.

Supprimer la base de données

La base de données associée est supprimée. Les données et fichiers journaux sont supprimés.

Il n'existe aucun mécanisme automatique pour restaurer les métadonnées de définition de la DAC ou la base de données après avoir supprimé une DAC. La possibilité de reconstruire l'instance de la DAC manuellement dépend de l'option de suppression.

Option

Comment reconstruire l'instance de la DAC

Supprimer l'inscription

Enregistrez une DAC de la base de données laissée en place.

Détacher la base de données

Rattachez la base de données à l'aide de sp_attachdb ou de SQL Server Management Studio, puis enregistrez une nouvelle instance de la DAC à partir de la base de données.

Supprimer la base de données

Restaurez la base de données à partir d'une sauvegarde complète effectuée avant que la DAC ait été supprimée, puis enregistrez une nouvelle instance de la DAC à partir de la base de données.

Notes

Reconstruire une instance de la DAC en inscrivant une DAC à partir d'une base de données rattachée ou restaurée ne recréera pas certaines parties de la DAC d'origine, telles que la stratégie de sélection du serveur.

Autorisations

Une DAC peut uniquement être supprimée par les membres des rôles serveur fixes sysadmin ou serveradmin, ou par le propriétaire de la base de données. Le compte d'administrateur système SQL Server intégré nommé sa peut également lancer l'Assistant.

Supprimer une DAC à l'aide de PowerShell

Créez un fichier de script PowerShell (tel que DeleteDAC.ps1) contenant le code ci-dessous.

  1. Ajoutez du code pour créer un objet serveur SMO et le définir sur l'instance contenant la DAC que vous souhaitez supprimer. Dans cet exemple, un objet serveur est défini comme l'instance par défaut sur l'ordinateur local :

    ## Set a SMO Server object to the default instance on the local computer.
    CD SQLSERVER:\SQL\localhost\DEFAULT
    $srv = get-item .
    
  2. Ajoutez du code pour ouvrir un objet ServerConnection et vous connecter à la même instance.

    ## Open a Common.ServerConnection to the same instance.
    $serverconnection = New-Object Microsoft.SqlServer.Management.Common.ServerConnection($srv.ConnectionContext.SqlConnectionObject)
    $serverconnection.Connect()
    $dacstore = New-Object Microsoft.SqlServer.Management.Dac.DacStore($serverconnection)
    
  3. Ajoutez du code pour vous inscrire aux événements de suppression de DAC.

    ## Subscribe to the DAC delete events.
    $dacstore.add_DacActionStarted({Write-Host `n`nStarting at $(get-date) :: $_.Description})
    $dacstore.add_DacActionFinished({Write-Host Completed at $(get-date) :: $_.Description})
    
  4. Ajoutez du code pour spécifier la DAC à supprimer. Dans cet exemple, le nom de la DAC est spécifié :

    ## Specify the DAC to delete.
    $dacName  = "MyApplication"
    
  5. Ajoutez du code pour exécuter la méthode Uninstall à l'aide des informations ci-dessus. Utilisez l'un des trois jeux de codes, en fonction de l'option de suppression qui convient le mieux :

    • Pour supprimer l'inscription de la DAC tout en gardant la base de données intacte :

      ## Only delete the DAC definition from msdb, the associated database remains active.
      $dacstore.Unmanage($dacName)
      
    • Pour supprimer l'inscription de la DAC et détacher la base de données :

      ## Delete the DAC definition from msdb and detach the associated database.
      $dacstore.Uninstall($dacName, [Microsoft.SqlServer.Management.Dac.DacUninstallMode]::DetachDatabase)
      
    • Pour supprimer l'inscription de la DAC et supprimer la base de données :

      ## Delete the DAC definition from msdb and drop the associated database.
      ## $dacstore.Uninstall($dacName, [Microsoft.SqlServer.Management.Dac.DacUninstallMode]::DropDatabase)
      

Exécutez DeleteDAC.ps1 depuis une session PowerShell dans laquelle vous aurez chargé les composants logiciels enfichables SQL Server PowerShell, ou bien depuis l'invite de commandes sqlps.

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

Dans Management Studio, vous pouvez lancer l'Assistant en cliquant avec le bouton droit sur un nœud de l'application de la couche Données dans l'Explorateur d'objets, et sélectionner Supprimer une application de la couche Données....

Cliquez sur un lien dans la liste ci-dessous pour accéder aux détails pour une page dans l'Assistant :

  • Introduction

  • Choisir une méthode

  • Résumé

  • Supprimer une application de la couche Données

Page Introduction

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

Ne plus afficher cette page. - Activez la case à cocher pour ne plus afficher la page à l'avenir.

Suivant > - Passe à la page Choisir une méthode.

Annuler - Termine l'Assistant sans supprimer une application de la couche Données ni une base de données.

Page Choisir une méthode

Utilisez cette page pour spécifier la méthode de suppression de l'application de la couche Données.

Supprimer l'inscription - Supprime les métadonnées qui définissent l'application de la couche Données, mais laisse la base de données associée intacte.

Détacher la base de données - Supprime les métadonnées qui définissent l'application de la couche Données et détache la base de données associée.

La base de données ne peut plus être référencée par cette instance du moteur de base de données, mais les données et fichiers journaux restent intacts.

Supprimer la base de données - Supprime les métadonnées qui définissent la DAC et supprime la base de données associée.

Les données et fichiers journaux pour la base de données sont supprimés définitivement.

< Précédent - Retourne à la page Introduction.

Suivant >- Passe à la page Résumé.

Annuler - Termine l'Assistant sans supprimer la DAC ni la base de données.

Page Résumé

Utilisez cette page pour examiner les mesures prises par l'Assistant lors de la suppression de l'instance de la DAC.

Examinez le résumé de vos sélections - Examinez la DAC, la base de données et la méthode de suppression affichée dans la zone. Si les informations sont correctes, sélectionnez Suivant ou Terminer pour supprimer la DAC. Si la DAC et les informations sur la base de données ne sont pas correctes, sélectionnez Annuler, puis la DAC appropriée. Si la méthode de suppression n'est pas correcte, sélectionnez Précédent pour retourner à la page Choisir une méthode et sélectionner une méthode différente.

< Précédent - Retourne à la page Choisir une méthode pour choisir une méthode de suppression différente.

Suivant >- Supprime l'instance de la DAC en utilisant la méthode que vous avez choisie à la page précédente, puis passe à la page Supprimer une application de la couche Données.

Annuler - Termine l'Assistant sans supprimer l'instance de la DAC.

Page Supprimer une application de la couche Données

Cette page signale la réussite ou l'échec de l'opération de suppression.

Suppression de la DAC - Signale la réussite ou l'échec de chaque mesure prise pour supprimer l'instance de la DAC. Examinez les informations pour déterminer la réussite ou l'échec de chaque action. Toute action pour laquelle une erreur s'est produite aura un lien dans la colonne Résultat. Sélectionnez le lien pour consulter un rapport de l'erreur pour cette action.

Enregistrer le rapport - Sélectionnez ce bouton pour enregistrer le rapport de suppression 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.

Terminer : termine l'Assistant.

Historique des modifications

Mise à jour du contenu

Ajout de la section sur l'utilisation de PowerShell.