SqlPackage voor SQL-database in Microsoft Fabric
Van toepassing op:✅SQL-database in Microsoft Fabric
In deze zelfstudie leert u hoe u met SqlPackage kunt werken in uw SQL-database in Fabric.
SqlPackage is een CLI die databaseportabiliteit en database-implementaties biedt.
- De draagbaarheid (importeren/exporteren) van een database die wordt beheerd in Azure of in Fabric zorgt ervoor dat uw gegevens overdraagbaar zijn naar andere platforms, waaronder SQL Server of Azure SQL Managed Instance, als u later wilt migreren.
- Dezelfde draagbaarheid maakt ook bepaalde migratiescenario's mogelijk via zelfstandige databasekopieën (
.bacpac
) met import-/exportbewerkingen.
SqlPackage kan ook eenvoudige database-implementaties van incrementele wijzigingen in databaseobjecten mogelijk maken (nieuwe kolommen in tabellen, wijzigingen in bestaande opgeslagen procedures, enzovoort).
- SqlPackage kan een
.dacpac
bestand met de definities van objecten in een database extraheren en een.dacpac
bestand publiceren om die objectstatus toe te passen op een nieuwe of bestaande database. - De publicatiebewerking kan ook worden geïntegreerd met SQL-projecten, waardoor offline en dynamischere ontwikkelingscycli voor SQL-databases mogelijk zijn.
Vereisten
- U hebt een bestaande infrastructuurcapaciteit nodig. Als u dat niet doet, start u een Fabric-proefversie.
- Zorg ervoor dat u SQL-database inschakelt in de tenantinstellingen van Fabric.
- Maak een nieuwe werkruimte of gebruik een bestaande Fabric-werkruimte.
- Maak of gebruik een bestaande SQL-database in Fabric. Als u er nog geen hebt, maakt u een nieuwe SQL-database in Fabric.
- Installeer de .NET 8 SDK.
Instellingen
SqlPackage is beschikbaar voor Windows, macOS en Linux als een dotnet-hulpprogramma. U kunt deze installeren met behulp van de volgende opdracht:
dotnet tool install --global Microsoft.SqlPackage
Als globaal dotnet-hulpprogramma is SqlPackage beschikbaar in uw terminal, net als sqlpackage
in elke map.
Een database importeren met SqlPackage
A .bacpac
is een draagbare kopie van een database, handig voor sommige migratie- en testscenario's. U kunt .bacpac
in een lege SQL-database.
Notitie
Een .bacpac
is geen back-up of een vervanging voor back-up-/herstelmogelijkheden. Zie Automatische back-ups in SQL-database in Microsoft Fabric en Herstellen vanuit een back-up in SQL Database in Microsoft Fabric in Microsoft Fabric voor meer informatie over back-ups in een Fabric SQL-database.
Als u een
.bacpac
uit uw Azure SQL Database-omgeving gebruikt, moet u mogelijk de brondatabase wijzigen om te voldoen aan het T-SQL-oppervlak van de Fabric SQL-database.Maak uw nieuwe SQL-database in Fabric zoals gebruikelijk via de Fabric-interface.
Kopieer de verbindingsreeks uit instellingen.
Gebruik de opdracht importeren vanuit terminal in de map sqlpackage. Geef uw eigenaar
<servername>
en<database_name>
.sqlpackage /action:import /sourcefile:"C:\DatabaseName.bacpac" /targetconnectionstring:"Data Source=tcp:<server_name>.database.fabric.microsoft.com,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
- Vervang uw verbindingsreeks in het dialoogvenster sql-databaseinstellingen.
- Vervang de
sourcefile
waarde door de.bacpac
naam (DatabaseName
) enlocation
op uw lokale computer.
Zie SqlPackage-import voor meer informatie over importeren.
Een database exporteren met SqlPackage
Het exporteren van een .bacpac
is de omgekeerde bewerking, waar u targetfile
een .bacpac
en uw sourceconnectionstring
kunt vinden in het dialoogvenster sql-databaseinstellingen, zoals in het vorige voorbeeld. Geef uw eigenaar <servername>
en <database_name>
. Voorbeeld:
sqlpackage.exe /action:export /targetfile:"C:\DatabaseName.bacpac" /sourceconnectionstring:"Data Source=tcp:<server_name>.database.fabric.microsoft.com,1433;Initial Catalog=<database_name>;MultipleActiveResultSets=False;Connect Timeout=30;Encrypt=True;TrustServerCertificate=False;ConnectRetryCount=6;ConnectRetryInterval=10;Authentication=Active Directory Interactive"
Zie SqlPackage-export voor meer informatie over exporteren.
Extraheren en publiceren
Een .dacpac
is een databaseschemamodelbestand met definities voor de tabellen, opgeslagen procedures en andere objecten in de brondatabase. Dit bestand kan worden gemaakt op basis van een bestaande database met SqlPackage of vanuit een SQL-databaseproject.
SqlPackage kan een .dacpac
nieuwe (lege) database implementeren of een bestaande database incrementeel bijwerken zodat deze overeenkomt met de gewenste .dacpac
status.
-
Extraheren maakt een
.dacpac
of SQL-bestanden uit een bestaande database. -
Hiermee wordt een
.dacpac
implementatie naar een database geïmplementeerd.
De SqlPackage publiceren en syntaxis extraheren is vergelijkbaar met de import-/exportopdrachten.
Waarschuwing
Het gebruik van SqlPackage voor het implementeren van een SQL-project of .dacpac
in SQL Database in Fabric wordt aanbevolen. Het implementeren van een .dacpac
vanuit Visual Studio is mogelijk mislukt.
Als u een .dacpac
wilt implementeren die is gemaakt op basis van Azure SQL Database, SQL Server of een SQL-project dat is gericht op een ander platform dan SQL Database in Fabric, voegt u de eigenschap /p:AllowIncompatiblePlatform=true
toe aan de opdracht SqlPackage Publish.