SqlPackage für SQL-Datenbank in Microsoft Fabric
Gilt für:✅SQL-Datenbank in Microsoft Fabric
In diesem Tutorial erfahren Sie, wie Sie mit SqlPackage in Ihrer SQL-Datenbank in Fabric arbeiten.
SqlPackage ist eine CLI, die Datenbankportabilität und Datenbankbereitstellungen bietet.
- Die Portabilität (Import/Export) einer in Azure oder Fabric verwalteten Datenbank stellt sicher, dass Ihre Daten auf anderen Plattformen portierbar sind, einschließlich SQL Server oder Azure SQL Managed Instance, sollten Sie später migrieren wollen.
- Die gleiche Portabilität ermöglicht auch bestimmte Migrationsszenarien durch eigenständige Datenbankkopien (
.bacpac
) mit Import-/Exportvorgängen.
SqlPackage kann auch einfache Datenbankbereitstellungen inkrementeller Änderungen an Datenbankobjekten ermöglichen (neue Spalten in Tabellen, Änderungen an vorhandenen gespeicherten Prozeduren usw.).
- SqlPackage kann eine
.dacpac
-Datei extrahieren, die die Definitionen von Objekten in einer Datenbank enthält, und eine.dacpac
-Datei veröffentlichen, um diesen Objektstatus auf eine neue oder vorhandene Datenbank anzuwenden. - Der Veröffentlichungsvorgang ist auch in SQL-Projekte integriert, die offline und dynamischere Entwicklungszyklen für SQL-Datenbanken ermöglichen.
Voraussetzungen
- Sie benötigen eine vorhandene Fabric-Kapazität. Falls dies nicht der Fall ist, können Sie eine Fabric-Testversion starten.
- Stellen Sie sicher, dass Sie die SQL-Datenbank in Fabric mithilfe von Mandanteneinstellungen aktivieren.
- Erstellen Sie einen neuen Arbeitsbereich, oder verwenden Sie einen vorhandenen Fabric-Arbeitsbereich.
- Erstellen Sie eine SQL-Datenbank in Fabric, oder verwenden Sie eine vorhandene. Wenn Sie noch keine haben, erstellen Sie eine neue SQL-Datenbank in Fabric.
- Installieren Sie das .NET 8 SDK.
Setup
SqlPackage ist für Windows, macOS und Linux als Dotnet-Tool verfügbar. Sie können es mit dem folgenden Befehl installieren:
dotnet tool install --global Microsoft.SqlPackage
Als globales Dotnet-Tool steht SqlPackage in Ihrem Terminal als sqlpackage
aus jedem Ordner zur Verfügung.
Importieren einer Datenbank mit SqlPackage
Ein .bacpac
ist eine portable Kopie einer Datenbank, die für einige Migrations- und Testszenarien nützlich ist. Sie können .bacpac
in eine leere SQL-Datenbank importieren.
Hinweis
Ein .bacpac
ist keine Sicherung und kein Ersatz für Sicherungs-/Wiederherstellungsfunktionen. Weitere Informationen zu Sicherungen in der Fabric SQL-Datenbank finden Sie unter Automatische Sicherungen in SQL-Datenbank in Microsoft Fabric und Wiederherstellen aus einer Sicherung in einer SQL-Datenbank in Microsoft Fabric.
Wenn Sie ein
.bacpac
aus Ihrer Azure SQL-Datenbankumgebung verwenden, müssen Sie die Quelldatenbank möglicherweise ändern, um dem T-SQL-Oberflächenbereich der Fabric SQL-Datenbank zu entsprechen.Erstellen Sie Ihre neue SQL-Datenbank in Fabric wie gewohnt über die Fabric-Schnittstelle.
Kopieren Sie die Verbindungszeichenfolge aus den Einstellungen.
Verwenden Sie den Importbefehl vom Terminal im Ordner „sqlpackage“. Nennen Sie Ihrem Besitzer
<servername>
und<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"
- Ersetzen Sie die Verbindungszeichenfolge aus dem Dialogfeld „SQL-Datenbankeinstellungen“.
- Ersetzen Sie den
sourcefile
-Wert durch den.bacpac
-Namen (DatabaseName
) und derlocation
auf dem lokalen Computer.
Weitere Informationen zum Import finden Sie unter SqlPackage-Import.
Exportieren einer Datenbank mit SqlPackage
Das Exportieren eines .bacpac
ist der umgekehrte Vorgang, bei dem ihr targetfile
ein .bacpac
ist und die sourceconnectionstring
im Dialogfeld mit den SQL-Datenbankeinstellungen wie im vorherigen Beispiel zu finden ist. Nennen Sie Ihrem Besitzer <servername>
und <database_name>
. Zum Beispiel:
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"
Weitere Informationen zum Export finden Sie unter SqlPackage-Export.
Extrahieren und Veröffentlichen
Ein .dacpac
ist eine Datenbankschema-Modelldatei, die Definitionen für die Tabellen, gespeicherten Prozeduren und andere Objekte in der Quelldatenbank enthält.
SqlPackage kann ein .dacpac
in einer neuen (leeren) Datenbank bereitstellen oder eine vorhandene Datenbank inkrementell aktualisieren, um dem gewünschten .dacpac
-Zustand zu entsprechen.
- Beim Extrahieren wird ein
.dacpac
oder SQL-Dateien aus einer vorhandenen Datenbank erstellt. - Beim Veröffentlichen wird ein
.dacpac
in einer Datenbank bereitgestellt.
Die SqlPackage-Veröffentlichungssyntax ähnelt den Import-/Exportbefehlen.