Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
L’action Import de SqlPackage importe le schéma et les données de table d’un fichier BACPAC (.bacpac) dans une base de données nouvelle ou vide dans SQL Server ou Azure SQL Database. Au moment de l’opération d’importation dans une base de données existante, la base de données cible ne peut pas contenir d’objets de schéma définis par l’utilisateur. Une nouvelle base de données peut également être créée par l’action d’importation lorsque l’utilisateur authentifié dispose des autorisations de création de base de données. L’action Importer fait partie de la fonctionnalité de portabilité de base de données de SqlPackage.
Remarque
Bien que Microsoft Entra ID soit le nouveau nom d’Azure Active Directory (Azure AD) pour empêcher l’interruption des environnements existants, Azure AD reste toujours dans certains éléments codés en dur, tels que les champs d’interface utilisateur, les fournisseurs de connexions, les codes d’erreur et cmdlets. Dans cet article, les deux noms sont interchangeables.
Remarque
L’importation SqlPackage donne les meilleurs résultats avec les bases de données de moins de 200 Go. Pour les bases de données plus importantes, vous pouvez optimiser l’opération en recourant aux propriétés disponibles dans cet article et aux conseils dans Résolution des problèmes avec SqlPackage ou atteindre la portabilité de la base de données par le biais des données dans les fichiers de parquet.
Syntaxe de ligne de commande
SqlPackage lance les actions spécifiées en utilisant les paramètres, propriétés et variables SQLCMD spécifiés sur la ligne de commande.
SqlPackage /Action:Import {parameters} {properties}
Paramètres obligatoires
L’action Importer nécessite un paramètre SourceFile pour spécifier le nom et l’emplacement du fichier .bacpac contenant les objets et données de base de données.
L’action d’importation nécessite une connexion cible où une nouvelle base de données sera créée par SqlPackage ou où une base de données vide est présente. Ceci est spécifié par le biais d’une combinaison de :
- Paramètres
TargetServerNameetTargetDatabaseName, ou -
TargetConnectionString, paramètre.
Exemples
# example import to Azure SQL Database using SQL authentication and a connection string
SqlPackage /Action:Import /SourceFile:"C:\AdventureWorksLT.bacpac" \
/TargetConnectionString:"Server=tcp:{yourserver}.database.windows.net,1433;Initial Catalog=AdventureWorksLT;Persist Security Info=False;User ID=sqladmin;Password={your_password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
# example import using short form parameter names
SqlPackage /a:Import /tsn:"{yourserver}.database.windows.net,1433" /tdn:"AdventureWorksLT" /tu:"sqladmin" \
/tp:"{your_password}" /sf:"C:\AdventureWorksLT.bacpac"
# example import using Microsoft Entra managed identity
SqlPackage /Action:Import /SourceFile:"C:\AdventureWorksLT.bacpac" \
/TargetConnectionString:"Server=tcp:{yourserver}.database.windows.net,1433;Initial Catalog=AdventureWorksLT;Authentication=Active Directory Managed Identity;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
# example import connecting using Microsoft Entra username and password
SqlPackage /Action:Import /SourceFile:"C:\AdventureWorksLT.bacpac" \
/TargetConnectionString:"Server=tcp:{yourserver}.database.windows.net,1433;Initial Catalog=AdventureWorksLT;Authentication=Active Directory Password;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;User ID={yourusername};Password={yourpassword}"
# example import connecting using Microsoft Entra universal authentication
SqlPackage /Action:Import /SourceFile:"C:\AdventureWorksLT.bacpac" /UniversalAuthentication:True \
/TargetConnectionString:"Server=tcp:{yourserver}.database.windows.net,1433;Initial Catalog=AdventureWorksLT;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
Paramètres de l’action Import
| Paramètre | Forme abrégée | Valeur | Description |
|---|---|---|---|
| /AccessToken: | /at: | {string} | Dans le cadre de l’authentification par jeton, spécifie le jeton d’accès à utiliser pour se connecter à la base de données cible. |
| /Action: | /a: | Importer | Indique l’action à effectuer. |
| /AzureCloudConfig: | /acc: | {string} | Spécifie les points de terminaison personnalisés pour la connexion à Microsoft Entra ID au format AzureActiveDirectoryAuthority={value};DatabaseServicePrincipalName={value}". |
| /Diagnostics: | /d: | {True|False} | Spécifie si la journalisation des diagnostics est affichée dans la console. Valeur par défaut False. |
| /DiagnosticsFile : | /df: | {string} | Spécifie un fichier où stocker les journaux de diagnostic. |
| /DiagnosticsLevel: | /dl | {None|Off|Critical|Error|Warning|Information|Verbose} | Spécifie les niveaux du fichier de diagnostic filtré des messages de suivi |
| /DiagnosticsPackageFile: | /dpf | {string} | Spécifie un fichier pour stocker le package de diagnostic. |
| /MaxParallelism: | /mp: | {int} | Spécifie le degré de parallélisme d’opérations simultanées sur une base de données. La valeur par défaut est 8. |
| /ModelFilePath: | /mfp: | {string} | Spécifie le chemin d’accès du fichier pour remplacer le model.xml dans le fichier source. L’utilisation de ce paramètre peut entraîner une défaillance du déploiement et/ou une perte de données involontaire. Ce paramètre est destiné uniquement à une utilisation lors de la résolution de problèmes liés à la publication, l’importation ou la génération de scripts. |
| /Properties: | /p: | {PropertyName}={Value} | Spécifie une paire nom-valeur pour une propriété spécifique à l’action ; {PropertyName}={Value}. |
| /Quiet: | /q: | {True|False} | Spécifie si les commentaires détaillés sont supprimés. Valeur par défaut False. |
| /SourceFile: | /sf: | {string} | Spécifie un fichier source à utiliser comme source d’action à partir du stockage local. Si ce paramètre est utilisé, aucun autre paramètre source ne doit être valide. |
| /TargetConnectionString: | /tcs: | {string} | Spécifie une chaîne de connexion SQL Server/Azure valide à la base de données cible. Si ce paramètre est spécifié, la chaîne de connexion doit être utilisée exclusivement par tous les autres paramètres cibles. |
| /TargetDatabaseName: | /tdn: | {string} | Spécifie une substitution pour le nom de la base de données qui est la cible de l’action SqlPackage. |
| /TargetEncryptConnection: | /tec: | {Optional|Mandatory|Strict|True|False} | Spécifie si le chiffrement SQL doit être utilisé pour la connexion de la base de données cible. La valeur par défaut est True. |
| /TargetHostNameInCertificate: | /thnic: | {string} | Spécifie la valeur qui est utilisée pour valider le certificat TLS/SSL SQL Server cible quand la couche de communication est chiffrée à l’aide du protocole TLS. |
| /TargetPassword: | /tp: | {string} | Pour les scénarios d’authentification SQL Server, définit le mot de passe à utiliser pour accéder à la base de données cible. |
| /TargetServerName: | /tsn: | {string} | Définit le nom du serveur hébergeant la base de données cible. |
| /TargetTimeout: | /tt: | {int} | Spécifie le délai d’attente (en secondes) pour l’établissement d’une connexion à la base de données cible. Pour Microsoft Entra ID, il est recommandé que cette valeur soit supérieure ou égale à 30 secondes. |
| /TargetTrustServerCertificate: | /ttsc: | {True|False} | Spécifie s’il faut utiliser TLS pour chiffrer la connexion de la base de données cible et ignorer la vérification de la chaîne de certificats pour valider la chaîne d’approbation. La valeur par défaut est False. |
| /TargetUser: | /tu: | {string} | Pour les scénarios d’authentification SQL Server, définit l’utilisateur SQL Server à utiliser pour accéder à la base de données cible. |