Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
Gælder for:✅SQL-database i Microsoft Fabric
I dette selvstudium lærer du, hvordan du arbejder med SqlPackage i din SQL-database i Fabric.
SqlPackage er en kommandolinjegrænseflade, der leverer databaseportabilitet og databaseinstallationer.
- Overførbarheden (import/eksport) af en database, der administreres i Azure eller Fabric, sikrer, at dine data er bærbare til andre platforme, hvis du vil migrere senere. – Overførsel omfatter flytning til og fra SQL Server, Azure SQL Database, Azure SQL Managed Instance og SQL-database i Fabric via selvstændige databasekopier (
.bacpaceller.dacpacfiler).
SqlPackage kan også muliggøre nem databaseinstallationer af trinvise ændringer af databaseobjekter (nye kolonner i tabeller, ændringer af eksisterende lagrede procedurer osv.).
- SqlPackage kan udtrække en
.dacpacfil, der indeholder definitionerne af objekter i en database, og udgive en.dacpacfil for at anvende objekttilstanden på en ny eller eksisterende database. - Publiceringshandlingen integreres også med SQL-projekter, hvilket muliggør offline- og mere dynamiske udviklingscyklusser for SQL-databaser.
Forudsætninger
- Du har brug for en eksisterende Fabric-kapacitet. Hvis du ikke gør det, skal du starte en Fabric-prøveversion.
- Opret et nyt arbejdsområde, eller brug et eksisterende Fabric-arbejdsområde.
- Opret eller brug en eksisterende SQL-database i Fabric. Hvis du ikke allerede har en, kan du oprette en ny SQL-database i Fabric.
- Installér .NET 8 SDK.
Opsætte
SqlPackage er tilgængelig til Windows, macOS og Linux som et dotnetværktøj. Du kan installere den ved hjælp af følgende kommando:
dotnet tool install --global Microsoft.SqlPackage
Som et globalt dotnetværktøj er SqlPackage tilgængelig i terminalen fra en hvilken som sqlpackage helst mappe.
Importér en database med SqlPackage
A .bacpac er en bærbar kopi af en database, der er nyttig til nogle overførsels- og testscenarier. Du kan importere det .bacpac til en tom SQL-database med SqlPackage-import.
Bemærk
A .bacpac er ikke en sikkerhedskopiering eller en erstatning for sikkerhedskopierings-/gendannelsesfunktioner. Du kan få flere oplysninger om sikkerhedskopier til SQL-database i Fabric under Automatisk sikkerhedskopiering i SQL-database i Microsoft Fabric og gendannelse fra en sikkerhedskopi i SQL-database i Microsoft Fabric.
Hvis du bruger et
.bacpacfra et Azure- eller SQL Server-miljø, skal du muligvis ændre kildedatabasen, så den opfylder SQL-databasen i Fabric T-SQL-overfladeområdet. Se udtræk og publicer portabilitet for en alternativ metode, der gør det muligt for SqlPackage-egenskaber at springe nogle ikke-understøttede objekter over.Opret din nye SQL-database i Fabric som normalt via Fabric-grænsefladen.
Kopiér forbindelsesstreng fra indstillingerne.
Brug kommandoen import fra terminal i sqlpackage-mappen. Angiv din ejer
<servername>og<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"- Erstat din forbindelsesstreng fra dialogboksen SQL-databaseindstillinger.
- Erstat værdien
sourcefilemed navnet.bacpac(DatabaseName) oglocationpå din lokale computer.
Følg importen med et kopijob i Data Factory i Microsoft Fabric. Du kan komme i gang under Hurtig introduktion: Oprette et kopijob.
Eksportér en database med SqlPackage
Eksport af en .bacpac er den omvendte handling, hvor er targetfile en .bacpac , og du sourceconnectionstring kan finde den i dialogboksen med indstillinger for SQL-database som i det forrige eksempel. Angiv din ejer <servername> og <database_name>. Eksempler:
sqlpackage /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"
Du kan finde flere oplysninger om eksport under SqlPackage-eksport.
Udtræk og publicer
A .dacpac er en databaseskemamodelfil, der indeholder definitioner for tabellerne, lagrede procedurer og andre objekter i kildedatabasen. Denne fil kan oprettes ud fra en eksisterende database med SqlPackage eller fra et SQL-databaseprojekt.
SqlPackage kan udrulle en .dacpac til en ny (tom) database eller trinvist opdatere en eksisterende database, så den svarer til den ønskede .dacpac tilstand.
-
Udpak opretter en
.dacpaceller SQL-filer fra en eksisterende database. -
Publish udruller en
.dacpactil en database.
SqlPackage-publicere og udtrække-syntaks svarer til import-/eksportkommandoerne.
Advarsel
Det anbefales at bruge SqlPackage til at udrulle et SQL-projekt eller .dacpac til SQL-databasen i Fabric. Det kan mislykkes at installere en .dacpac fra Visual Studio.
Hvis du vil udrulle en .dacpac, der er oprettet ud fra Azure SQL Database, SQL Server eller et SQL-projekt, der er målrettet til en anden platform end SQL-database i Fabric, skal du føje egenskaben /p:AllowIncompatiblePlatform=true til kommandoen SqlPackage publish.
Udtræk og udgiv portabilitet
Selvom SqlPackage-import-/eksportkommandoerne fokuserer på dataportabilitet med .bacpac formatet, kan kommandoerne udtrækkes og udgives i stand til at overføre data med .dacpac formatet. Udtræks- og publiceringsegenskaber kan bruges til at styre funktionsmåden for udtræknings- og publiceringshandlinger og give større fleksibilitet til konverteringer mellem platforme.
Hvis du vil udtrække og .dacpac inkludere dataene, skal du bruge egenskaben /p:ExtractAllTableData=true . Udtrækningshandlingen opretter en .dacpac , der indeholder både skemaet og dataene fra kildedatabasen. Egenskaben /p:ExtractReferencedServerScopedElements=false udelukker serverbaserede elementer, som ikke understøttes i SQL-databasen i Fabric. Følgende kommando udtrækker en .dacpac med data fra en eksisterende SQL-database i Fabric:
sqlpackage /action:extract /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" /targetfile:"C:\extracted.dacpac" /p:ExtractAllTableData=true /p:ExtractReferencedServerScopedElements=false
Hvis du vil publicere en .dacpac , der er udtrukket med dataene, kræves der ingen ekstra egenskaber. Flere egenskaber kan dog bruges til at styre funktionsmåden for publiceringshandlingen:
-
/p:AllowIncompatiblePlatform=truetillader installation af en.dacpac, der er udpakket fra en anden platform (f.eks. Azure SQL Database, SQL Server). -
/p:ExcludeObjectTypes=Logins;Usersudelukker objekttyper, der kan opleve kompatibilitetsproblemer, når du publicerer til SQL-databasen i Fabric. Du kan se en komplet liste over objekttyper, der kan udelades, under Publicer SqlPackage.
På samme måde som sqlPackage-importkommandoen skal du oprette databasen i Fabric, før du publicerer en .dacpac til SQL-database i Fabric. Du kan oprette databasen via Fabric-portalen eller en anden Fabric-grænseflade. Følgende kommando publicerer den udpakkede .dacpac til en tom SQL-database i Fabric:
sqlpackage /action:publish /sourcefile:"C:\extracted.dacpac" /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" /p:AllowIncompatiblePlatform=true /p:ExcludeObjectTypes=Logins;Users