Migrer vers une base de données Azure SQL à l’aide de BACPAC

Effectué

Une base de données SQL Server peut être importée dans une base de données Azure SQL en utilisant un fichier .bacpac.

Un fichier .bacpac est un fichier compressé contenant les métadonnées et les données de la base de données. Les données peuvent être importées à partir du Stockage Blob Azure ou d’un stockage local dans un environnement local.

Pour optimiser la mise à l’échelle et les performances dans les environnements de production, il est recommandé d’utiliser l’utilitaire SQLPackage. L’exécution de plusieurs commandes SqlPackage en parallèle pour des sous-ensembles de tables peut accélérer considérablement les opérations d’importation et d’exportation.

Importer à partir d’un fichier BACPAC sur le portail Azure

Vous pouvez suivre ces étapes pour importer un fichier .bacpac dans Azure SQL Database.

  1. Pour importer à partir d’un fichier BACPAC dans une base de données unique à l’aide du Portail Microsoft Azure, ouvrez la page appropriée du serveur de base de données, puis, dans la barre d’outils, sélectionnez Importer la base de données.
  2. Sélectionnez le compte de stockage et le conteneur pour le fichier BACPAC, puis sélectionnez le fichier BACPAC à partir duquel importer.
  3. Spécifiez la taille de la nouvelle base de données (généralement la même que celle d’origine), indiquez les informations d’identification du serveur SQL de destination, et sélectionnez OK.
  4. Pour superviser la progression d’une importation, ouvrez la page du serveur de la base de données et, sous Paramètres, sélectionnez Historique d’importation/exportation. Une fois achevée, l’importation présente l’état Terminé.

En outre, vous pouvez également utiliser SqlPackage pour importer un fichier BACPAC, ce qui est plus rapide que d’utiliser le portail Azure. La commande suivante importe la base de données AdventureWorks2019 du stockage local vers un serveur Azure SQL Database appelé mynewserver20230103. Elle crée une base de données appelée myMigratedDatabase avec un niveau de service Premium et un objectif de service P6.

Changez ces valeurs en fonction de votre environnement.

SqlPackage.exe /a:import /tcs:"Data Source=mynewserver20230103.database.windows.net;Initial Catalog=myMigratedDatabase;User Id=<your_server_admin_account_user_id>;Password=<your_server_admin_account_password>" /sf:AdventureWorks2019.bacpac /p:DatabaseEdition=Premium /p:DatabaseServiceObjective=P6

Conseil

Pour augmenter la vitesse du processus d’importation, vous pouvez mettre à l’échelle votre base de données vers un niveau de service et une taille de calcul supérieurs, ce qui fournit plus de ressources plus rapidement. Une fois l’importation terminée, vous pouvez effectuer un scale-down jusqu’au niveau de service et à la taille de calcul souhaités.