Pakiet SqlPackage dla bazy danych SQL w usłudze Microsoft Fabric
Dotyczy bazy danych:✅SQL w usłudze Microsoft Fabric
Z tego samouczka dowiesz się, jak pracować z pakietem SqlPackage w bazie danych SQL w usłudze Fabric.
SqlPackage to interfejs wiersza polecenia zapewniający przenośność bazy danych i wdrożenia bazy danych.
- Przenośność (importowanie/eksportowanie) bazy danych zarządzanej na platformie Azure lub w sieci szkieletowej gwarantuje, że dane są przenośne do innych platform, w tym programu SQL Server lub usługi Azure SQL Managed Instance, jeśli chcesz przeprowadzić migrację później.
- Ta sama przenośność umożliwia również wykonywanie pewnych scenariuszy migracji za pośrednictwem samodzielnie zawartych kopii bazy danych (
.bacpac
) z operacjami importowania/eksportowania.
Pakiet SqlPackage umożliwia również łatwe wdrażanie baz danych przyrostowych zmian w obiektach bazy danych (nowe kolumny w tabelach, zmiany istniejących procedur składowanych itp.).
- Pakiet SqlPackage może wyodrębnić
.dacpac
plik zawierający definicje obiektów w bazie danych i opublikować.dacpac
plik, aby zastosować ten stan obiektu do nowej lub istniejącej bazy danych. - Operacja publikowania integruje się również z projektami SQL, co umożliwia przechodzenie w tryb offline i bardziej dynamiczne cykle programistyczne dla baz danych SQL.
Wymagania wstępne
- Potrzebna jest istniejąca pojemność sieci szkieletowej. Jeśli tego nie zrobisz, uruchom wersję próbną usługi Fabric.
- Upewnij się, że włączono usługę SQL Database w ustawieniach dzierżawy sieci szkieletowej.
- Utwórz nowy obszar roboczy lub użyj istniejącego obszaru roboczego usługi Fabric.
- Utwórz lub użyj istniejącej bazy danych SQL w sieci szkieletowej. Jeśli jeszcze go nie masz, utwórz nową bazę danych SQL w usłudze Fabric.
- Zainstaluj zestaw .NET 8 SDK.
Ustawienia
Pakiet SqlPackage jest dostępny dla systemów Windows, macOS i Linux jako narzędzie dotnet. Można go zainstalować przy użyciu następującego polecenia:
dotnet tool install --global Microsoft.SqlPackage
Jako globalne narzędzie dotnet pakiet SqlPackage jest dostępny w terminalu, jak sqlpackage
w dowolnym folderze.
Importowanie bazy danych za pomocą pakietu SqlPackage
A .bacpac
to przenośna kopia bazy danych, przydatna w niektórych scenariuszach migracji i testowania. Można je zaimportować .bacpac
do pustej bazy danych SQL.
Uwaga
Element nie .bacpac
jest kopią zapasową ani zamiennikiem możliwości tworzenia/przywracania kopii zapasowych. Aby uzyskać więcej informacji na temat kopii zapasowych w usłudze Fabric SQL Database, zobacz Automatyczne kopie zapasowe w bazie danych SQL w usłudze Microsoft Fabric i Przywracanie z kopii zapasowej w bazie danych SQL w usłudze Microsoft Fabric.
W przypadku korzystania ze
.bacpac
środowiska usługi Azure SQL Database może być konieczne zmodyfikowanie źródłowej bazy danych w celu spełnienia obszaru powierzchni języka T-SQL bazy danych SQL fabric.Utwórz nową bazę danych SQL w usłudze Fabric w zwykły sposób za pośrednictwem interfejsu sieci szkieletowej.
Skopiuj parametry połączenia z ustawień.
Użyj polecenia import z terminalu w folderze sqlpackage. Podaj właściciela
<servername>
i<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"
- Zastąp parametry połączenia z okna dialogowego Ustawień bazy danych SQL.
- Zastąp
sourcefile
.bacpac
wartość nazwą (DatabaseName
) ilocation
maszyną lokalną.
Aby uzyskać więcej informacji na temat importowania, zobacz Importowanie pakietu SqlPackage.
Eksportowanie bazy danych za pomocą pakietu SqlPackage
Eksportowanie elementu .bacpac
to operacja odwrotna, w której targetfile
znajduje się element i .bacpac
sourceconnectionstring
można go znaleźć w oknie dialogowym ustawień bazy danych SQL, jak w poprzednim przykładzie. Podaj właściciela <servername>
i <database_name>
. Na przykład:
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"
Aby uzyskać więcej informacji na temat eksportowania, zobacz Eksportowanie pakietu SqlPackage.
Wyodrębnianie i publikowanie
A .dacpac
to plik modelu schematu bazy danych zawierający definicje tabel, procedur składowanych i innych obiektów w źródłowej bazie danych. Ten plik można utworzyć na podstawie istniejącej bazy danych za pomocą pakietu SqlPackage lub projektu bazy danych SQL .
Pakiet SqlPackage może wdrożyć .dacpac
bazę danych w nowej (pustej) bazie danych lub przyrostowo zaktualizować istniejącą bazę danych w celu dopasowania do żądanego .dacpac
stanu.
-
Wyodrębnianie tworzy
.dacpac
pliki sql lub z istniejącej bazy danych. -
Publikowanie wdraża
.dacpac
element w bazie danych.
Składnia publikowania i wyodrębniania jest podobna do poleceń dotyczących importu/eksportu.
Ostrzeżenie
Zaleca się użycie pakietu SqlPackage do wdrożenia projektu SQL lub .dacpac
do bazy danych SQL w Fabric. Wdrażanie .dacpac
z programu Visual Studio może zakończyć się niepowodzeniem.
Aby wdrożyć .dacpac
utworzone na podstawie usługi Azure SQL Database, programu SQL Server lub projektu SQL przeznaczonego dla platformy innej niż baza danych SQL w usłudze Fabric, dołącz właściwość /p:AllowIncompatiblePlatform=true
do polecenia publikowania sqlPackage.