SqlPackage för SQL-databas i Microsoft Fabric
Gäller för:✅SQL-databas i Microsoft Fabric
I den här självstudien får du lära dig hur du arbetar med SqlPackage i din SQL-databas i Fabric.
SqlPackage är ett CLI som tillhandahåller databasportabilitet och databasdistributioner.
- Portabiliteten (import/export) för en databas som hanteras i Azure eller i Fabric säkerställer att dina data är portabla till andra plattformar, inklusive SQL Server eller Azure SQL Managed Instance, om du vill migrera senare.
- Samma portabilitet möjliggör även vissa migreringsscenarier via fristående databaskopior (
.bacpac
) med import-/exportåtgärder.
SqlPackage kan också möjliggöra enkla databasdistributioner av inkrementella ändringar av databasobjekt (nya kolumner i tabeller, ändringar i befintliga lagrade procedurer osv.).
- SqlPackage kan extrahera en
.dacpac
fil som innehåller definitionerna av objekt i en databas och publicera en.dacpac
fil för att tillämpa objekttillståndet på en ny eller befintlig databas. - Publiceringsåtgärden integreras också med SQL-projekt, vilket möjliggör offline- och mer dynamiska utvecklingscykler för SQL-databaser.
Förutsättningar
- Du behöver en befintlig infrastrukturkapacitet. Om du inte gör det startar du en fabric-utvärderingsversion.
- Se till att du aktiverar SQL-databas i inställningarna för Fabric-klientorganisationen.
- Skapa en ny arbetsyta eller använd en befintlig infrastrukturarbetsyta.
- Skapa eller använda en befintlig SQL-databas i Fabric. Om du inte redan har en skapar du en ny SQL-databas i Infrastrukturresurser.
- Installera .NET 8 SDK.
Ställ in
SqlPackage är tillgängligt för Windows, macOS och Linux som ett dotnet-verktyg. Du kan installera den med hjälp av följande kommando:
dotnet tool install --global Microsoft.SqlPackage
Som ett globalt dotnet-verktyg är SqlPackage tillgängligt i terminalen från sqlpackage
valfri mapp.
Importera en databas med SqlPackage
A .bacpac
är en bärbar kopia av en databas, användbar för vissa migrerings- och testscenarier. Du kan importera den .bacpac
till en tom SQL-databas.
Kommentar
A .bacpac
är inte en säkerhetskopia eller en ersättning för säkerhetskopierings-/återställningsfunktioner. Mer information om säkerhetskopior i Fabric SQL-databasen finns i Automatiska säkerhetskopior i SQL-databasen i Microsoft Fabric och Återställning från en säkerhetskopia i SQL-databasen i Microsoft Fabric.
Om du använder en
.bacpac
från din Azure SQL Database-miljö kan du behöva ändra källdatabasen så att den uppfyller T-SQL-ytan för Fabric SQL-databasen.Skapa din nya SQL-databas i Fabric som vanligt via Fabric-gränssnittet.
Kopiera anslutningssträng från inställningarna.
Använd importkommandot från terminalen i mappen sqlpackage. Ange din ägare
<servername>
och<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"
- Ersätt din anslutningssträng från dialogrutan FÖR SQL-databasinställningar.
- Ersätt värdet
sourcefile
med.bacpac
namnet (DatabaseName
) ochlocation
på den lokala datorn.
Mer information om import finns i SqlPackage-import.
Exportera en databas med SqlPackage
Exportera en .bacpac
är den omvända åtgärden, där din targetfile
är en .bacpac
och du sourceconnectionstring
kan hittas i dialogrutan SQL-databasinställningar, som i föregående exempel. Ange din ägare <servername>
och <database_name>
. Till exempel:
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"
Mer information om export finns i SqlPackage-export.
Extrahera och publicera
A .dacpac
är en databasschemamodellfil som innehåller definitioner för tabellerna, lagrade procedurer och andra objekt i källdatabasen. Den här filen kan skapas från en befintlig databas med SqlPackage eller från ett SQL-databasprojekt.
SqlPackage kan distribuera en .dacpac
till en ny (tom) databas eller stegvis uppdatera en befintlig databas för att matcha önskat .dacpac
tillstånd.
-
Extrahera skapar en
.dacpac
eller sql-filer från en befintlig databas. -
Publish distribuerar en
.dacpac
till en databas.
SqlPackage-publiceringssyntax och extraheringssyntax liknar import/export-kommandon.
Varning
Vi rekommenderar att du använder SqlPackage för att distribuera ett SQL-projekt eller .dacpac
till SQL-databasen i Fabric. Det kan misslyckas att distribuera en .dacpac
från Visual Studio.
Om du vill distribuera en .dacpac
som har skapats från Azure SQL Database, SQL Server eller ett SQL-projekt som riktar sig mot en annan plattform än SQL-databas i Fabric lägger du till egenskapen /p:AllowIncompatiblePlatform=true
till SqlPackage-publiceringskommandot.