Partager via


SqlPackage pour la base de données SQL dans Microsoft Fabric

S’applique à :Base de données SQL dans Microsoft Fabric

Dans ce tutoriel, vous allez apprendre à utiliser SqlPackage dans votre base de données SQL dans Fabric.

SqlPackage est une interface CLI qui fournit portabilité de base de données et déploiements de base de données.

  • La portabilité (importation/exportation) d’une base de données gérée dans Azure ou dans Fabric garantit que vos données sont portables vers d’autres plateformes, notamment SQL Server ou Azure SQL Managed Instance, si vous souhaitez migrer ultérieurement.
  • La même portabilité permet également certains scénarios de migration via des copies de base de données autonomes (.bacpac) avec des opérations d’importation/exportation.

SqlPackage peut également permettre de déployer facilement des bases de données en apportant des modifications incrémentielles aux objets de la base de données (nouvelles colonnes dans les tables, modifications des procédures stockées existantes, etc.).

  • SqlPackage peut extraire un fichier .dacpac contenant les définitions d’objets d’une base de données et publier un fichier .dacpac pour appliquer cet état d’objet à une base de données nouvelle ou existante.
  • L'opération de publication s’intègre également aux projets SQL, permettant ainsi des cycles de développement hors ligne plus dynamiques pour les bases de données SQL.

Prérequis

Programme d’installation

SqlPackage est disponible pour Windows, macOS et Linux en tant qu’outil dotnet. Vous pouvez l’installer à l’aide de la commande suivante :

dotnet tool install --global Microsoft.SqlPackage

En tant qu’outil dotnet global, SqlPackage est disponible dans votre terminal en tant que sqlpackage à partir de n’importe quel dossier.

Importer une base de données avec SqlPackage

Un .bacpac est une copie portable d’une base de données, utile pour certains scénarios de migration et de test. Vous pouvez importer ce .bacpac dans une base de données SQL vide.

Remarque

Un .bacpac n’est pas une sauvegarde ou un remplacement des fonctionnalités de sauvegarde/restauration. Pour plus d’informations sur les sauvegardes au niveau de la base de données SQL dans Fabric, consultez Sauvegardes automatiques dans la base de données SQL dans Microsoft Fabric et Effectuer une restauration à partir d’une sauvegarde dans une base de données SQL dans Microsoft Fabric.

  1. Si vous utilisez un .bacpac à partir de votre environnement Azure SQL Database, vous devrez peut-être modifier la base de données source pour qu'elle corresponde à la surface T-SQL de la base de données SQL Fabric.

  2. Créez votre nouvelle base de données SQL dans Fabric comme d’habitude via l’interface Fabric.

  3. Copiez la chaîne de connexion à partir des paramètres.

    Capture d’écran du portail Fabric montrant la page Chaînes de connexion de la base de données SQL.

  4. Utilisez la commande d’importation à partir du terminal dans le dossier sqlpackage. Indiquez votre propriétaire <servername> et <database_name>.

    sqlpackage /action:import /sourcefile:"C:\DatabaseName.bacpac" /targetconnectionstring:"Data Source=tcp:<server_name>.database.windows.net,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
    
    • Remplacez votre chaîne de connexion à partir de la boîte de dialogue paramètres de base de données SQL.
    • Remplacez la valeur sourcefile par le nom .bacpac (DatabaseName) et location sur votre ordinateur local.

Pour plus d’informations sur l’importation, consultez Importation de SqlPackage.

Exporter une base de données avec SqlPackage

L’exportation d’un .bacpac est l’opération inverse, où votre targetfile est un .bacpac et votre sourceconnectionstring se trouve dans la boîte de dialogue paramètres de base de données SQL, comme dans l’exemple précédent. Indiquez votre propriétaire <servername> et <database_name>. Par exemple :

sqlpackage.exe /action:export /targetfile:"C:\DatabaseName.bacpac" /sourceconnectionstring:"Data Source=tcp:<server_name>.database.windows.net,1433;Initial    Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"

Pour plus d’informations sur l’exportation, consultez Exportation de SqlPackage.

Extraire et publier

Diagramme montrant comment les projets de base de données SQL peuvent déplacer des modifications de schéma.

Un .dacpac est un fichier de modèle de schéma de la base de données, contenant des définitions pour les tables, les procédures stockées et d’autres objets de la base de données source.

SqlPackage est capable de déployer un .dacpac sur une nouvelle base de données (vide) ou de mettre à jour de façon incrémentielle une base de données existante pour correspondre à l’état .dacpac souhaité.

  • Extraire crée un .dacpac ou des fichiers SQL à partir d’une base de données existante.
  • Publier déploie un .dacpac dans une base de données.

La syntaxe de publication SqlPackage est similaire aux commandes import/export.