Σημείωση
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να συνδεθείτε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Ισχύει για:✅Βάση δεδομένων SQL στο Microsoft Fabric
Σε αυτή την εκμάθηση, θα μάθετε πώς να εργάζεστε με το SqlPackage στη βάση δεδομένων SQL σας στο Fabric.
Το SqlPackage είναι ένα CLI που παρέχει φορητότητα βάσης δεδομένων και αναπτύξεις βάσης δεδομένων.
- Η φορητότητα (εισαγωγή/εξαγωγή) μιας βάσης δεδομένων που διαχειρίζεται το Azure ή το Fabric εξασφαλίζει ότι τα δεδομένα σας είναι φορητά σε άλλες πλατφόρμες εάν θέλετε να κάνετε μετεγκατάσταση αργότερα. - Η φορητότητα περιλαμβάνει μετακίνηση από και προς ΤΟΝ SQL Server, τη Βάση δεδομένων SQL Azure, τη Διαχειριζόμενη παρουσία Azure SQL και τη βάση δεδομένων SQL στο Fabric μέσω αυτόνομων αντιγράφων βάσης δεδομένων (
.bacpacή.dacpacαρχείων).
Το SqlPackage μπορεί επίσης να επιτρέψει την εύκολη ανάπτυξη βάσεων δεδομένων επαυξητικών αλλαγών στα αντικείμενα βάσης δεδομένων (νέες στήλες σε πίνακες, αλλαγές σε υπάρχουσες αποθηκευμένες διαδικασίες κ.λπ.).
- Το SqlPackage μπορεί να εξαγάγει ένα
.dacpacαρχείο που περιέχει τους ορισμούς των αντικειμένων σε μια βάση δεδομένων και να δημοσιεύσει ένα.dacpacαρχείο για να εφαρμόσει αυτή την κατάσταση αντικειμένου σε μια νέα ή υπάρχουσα βάση δεδομένων. - Η λειτουργία δημοσίευσης ενοποιείται επίσης με έργα SQL, τα οποία επιτρέπουν κύκλους ανάπτυξης χωρίς σύνδεση και πιο δυναμικούς κύκλους ανάπτυξης για βάσεις δεδομένων SQL.
Προαπαιτούμενα στοιχεία
- Χρειάζεστε ένα υπάρχον σύνολο εκχωρημένων πόρων Fabric. Εάν δεν το κάνετε, ξεκινήστε μια δοκιμαστική έκδοση Fabric.
- Δημιουργήστε έναν νέο χώρο εργασίας ή χρησιμοποιήστε έναν υπάρχοντα χώρο εργασίας Fabric.
- Δημιουργήστε ή χρησιμοποιήστε μια υπάρχουσα βάση δεδομένων SQL στο Fabric. Εάν δεν έχετε ήδη μία, δημιουργήστε μια νέα βάση δεδομένων SQL στο Fabric.
- Εγκαταστήστε το .NET 8 SDK.
Ρύθμιση
Το SqlPackage διατίθεται για Windows, macOS και Linux ως εργαλείο dotnet. Μπορείτε να την εγκαταστήσετε χρησιμοποιώντας την ακόλουθη εντολή:
dotnet tool install --global Microsoft.SqlPackage
Ως καθολικό εργαλείο dotnet, το SqlPackage είναι διαθέσιμο στο τερματικό σας όπως sqlpackage από οποιονδήποτε φάκελο.
Εισαγωγή βάσης δεδομένων με το SqlPackage
Το A .bacpac είναι ένα φορητό αντίγραφο μιας βάσης δεδομένων, χρήσιμο για ορισμένα σενάρια μετεγκατάστασης και δοκιμών. Μπορείτε να το.bacpac εισαγάγετε σε μια κενή βάση δεδομένων SQL με την εισαγωγή SqlPackage.
Σημείωμα
Το .bacpac δεν είναι αντίγραφο ασφαλείας ή αντικατάσταση για δυνατότητες δημιουργίας αντιγράφων ασφαλείας/επαναφοράς. Για περισσότερες πληροφορίες σχετικά με τα αντίγραφα ασφαλείας για τη βάση δεδομένων SQL στο Fabric, ανατρέξτε στο θέμα Αυτόματη δημιουργία αντιγράφων ασφαλείας σε βάση δεδομένων SQL στο Microsoft Fabric και Επαναφορά από ένα αντίγραφο ασφαλείας στη βάση δεδομένων SQL στο Microsoft Fabric.
Εάν χρησιμοποιείτε ένα από ένα
.bacpacπεριβάλλον Azure ή SQL Server, ίσως χρειαστεί να αλλάξετε τη βάση δεδομένων προέλευσης για να ικανοποιεί τη βάση δεδομένων SQL στην περιοχή επιφάνειας Fabric T-SQL. Ανατρέξτε στο θέμα Εξαγωγή και δημοσίευση φορητότητας για μια εναλλακτική μέθοδο που επιτρέπει στις ιδιότητες sqlPackage να παραλείψουν ορισμένα μη υποστηριζόμενα αντικείμενα.Δημιουργήστε τη νέα βάση δεδομένων SQL σας στο Fabric όπως συνήθως μέσω της διασύνδεσης Fabric.
Αντιγράψτε τη συμβολοσειρά σύνδεσης από τις ρυθμίσεις.
Χρησιμοποιήστε την εντολή εισαγωγής από το τερματικό στον φάκελο sqlpackage. Καταχωρήστε τον κάτοχο
<servername>και<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"- Αντικαταστήστε τη συμβολοσειρά σύνδεσης από το παράθυρο διαλόγου Ρυθμίσεις βάσης δεδομένων SQL.
- Αντικαταστήστε την
sourcefileτιμή με το.bacpacόνομα (DatabaseName) καιlocationστον τοπικό υπολογιστή σας.
Ακολουθήστε την εισαγωγή με μια εργασία αντιγραφής στο Data Factory στο Microsoft Fabric. Για να ξεκινήσετε, ανατρέξτε στο θέμα Οδηγός γρήγορης εκκίνησης: Δημιουργία εργασίας αντιγραφής.
Εξαγωγή βάσης δεδομένων με το SqlPackage
Η εξαγωγή μιας .bacpac λειτουργίας είναι η αντίστροφη λειτουργία, όπου η δική σας targetfile είναι .bacpac και μπορείτε sourceconnectionstring να τη βρείτε στο παράθυρο διαλόγου Ρυθμίσεις βάσης δεδομένων SQL, όπως στο προηγούμενο παράδειγμα. Καταχωρήστε τον κάτοχο <servername> και <database_name>. Για παράδειγμα:
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"
Για περισσότερες πληροφορίες σχετικά με την εξαγωγή, ανατρέξτε στο θέμα Εξαγωγή sqlPackage.
Εξαγωγή και δημοσίευση
Το A .dacpac είναι ένα αρχείο μοντέλου σχήματος βάσης δεδομένων, που περιέχει ορισμούς για τους πίνακες, αποθηκευμένες διαδικασίες και άλλα αντικείμενα στη βάση δεδομένων προέλευσης. Αυτό το αρχείο μπορεί να δημιουργηθεί από μια υπάρχουσα βάση δεδομένων με sqlPackage ή από ένα έργο βάσης δεδομένων SQL.
Το SqlPackage έχει τη δυνατότητα ανάπτυξης μιας .dacpac νέας (κενής) βάσης δεδομένων ή επαυξητικής ενημέρωσης μιας υπάρχουσας βάσης δεδομένων ώστε να ταιριάζει με την επιθυμητή .dacpac κατάσταση.
-
Η εξαγωγή δημιουργεί
.dacpacαρχεία ή sql από μια υπάρχουσα βάση δεδομένων. -
Η δημοσίευση αναπτύσσει μια
.dacpacσε μια βάση δεδομένων.
Το SqlPackage δημοσιεύει και εξαγωγή σύνταξη είναι παρόμοια με τις εντολές εισαγωγής/εξαγωγής.
Προειδοποίηση
Συνιστάται η χρήση του SqlPackage για την ανάπτυξη ενός έργου SQL ή .dacpac στη βάση δεδομένων SQL στο Fabric. Η ανάπτυξη μιας .dacpac από το Visual Studio μπορεί να αποτύχει.
Για να αναπτύξετε μια .dacpac που δημιουργήθηκε από τη Βάση δεδομένων SQL Azure, τον SQL Server ή ένα έργο SQL που στοχεύει σε μια πλατφόρμα διαφορετική από τη βάση δεδομένων SQL στο Fabric, προσαρτήστε την ιδιότητα /p:AllowIncompatiblePlatform=true στην εντολή δημοσίευσης του SqlPackage.
Εξαγωγή και δημοσίευση φορητότητας
Ενώ οι εντολές εισαγωγής/εξαγωγής του SqlPackage εστιάζουν στη φορητότητα των δεδομένων με τη .bacpac μορφή, οι εντολές εξαγωγής και δημοσίευσης έχουν τη δυνατότητα μεταφοράς δεδομένων με τη .dacpac μορφή. Οι ιδιότητες εξαγωγής και δημοσίευσης μπορούν να χρησιμοποιηθούν για τον έλεγχο της συμπεριφοράς των λειτουργιών εξαγωγής και δημοσίευσης και την παροχή μεγαλύτερης ευελιξίας για μετατροπές μεταξύ πλατφορμών.
Για να εξαγάγετε ένα .dacpac και να συμπεριλάβετε τα δεδομένα, χρησιμοποιήστε την /p:ExtractAllTableData=true ιδιότητα . Η λειτουργία εξαγωγής δημιουργεί ένα .dacpac που περιέχει τόσο το σχήμα όσο και τα δεδομένα από τη βάση δεδομένων προέλευσης. Η ιδιότητα /p:ExtractReferencedServerScopedElements=false δεν περιλαμβάνει στοιχεία εμβέλειας διακομιστή, τα οποία δεν υποστηρίζονται στη βάση δεδομένων SQL στο Fabric. Η ακόλουθη εντολή εξάγει ένα .dacpac με δεδομένα από μια υπάρχουσα βάση δεδομένων SQL στο 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
Για να δημοσιεύσετε μια .dacpac που έχει εξαχθεί μαζί με τα δεδομένα, δεν απαιτούνται επιπλέον ιδιότητες. Ωστόσο, μπορούν να χρησιμοποιηθούν πολλές ιδιότητες για τον έλεγχο της συμπεριφοράς της λειτουργίας δημοσίευσης:
-
/p:AllowIncompatiblePlatform=trueΕπιτρέπει την ανάπτυξη μιας.dacpacπου έχει εξαχθεί από μια διαφορετική πλατφόρμα (για παράδειγμα, βάση δεδομένων SQL Azure, SQL Server). -
/p:ExcludeObjectTypes=Logins;UsersΕξαιρεί τύπους αντικειμένων που ενδέχεται να αντιμετωπίσουν προβλήματα συμβατότητας κατά τη δημοσίευση σε βάση δεδομένων SQL στο Fabric. Για μια πλήρη λίστα των τύπων αντικειμένων που μπορούν να εξαιρεθούν, ανατρέξτε στο θέμα Δημοσίευση sqlPackage.
Παρόμοια με την εντολή εισαγωγής SqlPackage, πριν από τη δημοσίευση μιας .dacpac βάσης δεδομένων SQL στο Fabric, πρέπει να δημιουργήσετε τη βάση δεδομένων στο Fabric. Μπορείτε να δημιουργήσετε τη βάση δεδομένων μέσω της πύλης Fabric ή άλλης διασύνδεσης Fabric. Η ακόλουθη εντολή δημοσιεύει την εξαγωγή .dacpac σε μια κενή βάση δεδομένων SQL στο 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