Κοινοποίηση μέσω


Έναρξη και διακοπή κατοπτρισμού βάσης δεδομένων SQL με το Fabric REST API

Ισχύει για:Βάση δεδομένων SQL στο Microsoft Fabric

Μπορείτε να χρησιμοποιήσετε το Fabric REST API για να ξεκινήσετε και να διακόψετε τον κατοπτρισμό από μια βάση δεδομένων SQL στο OneLake στο Fabric. Αυτό το άρθρο και το δείγμα δέσμης ενεργειών δείχνουν πώς μπορείτε να χρησιμοποιήσετε το PowerShell για να καλέσετε την έναρξη ή τη διακοπή κατοπτρισμού του Fabric REST API.

Ο κατοπτρισμός της βάσης δεδομένων SQL στο OneLake εκτελείται πάντα, από προεπιλογή. Υπάρχουν σενάρια όπου ο κατοπτρισμός για τη βάση δεδομένων SQL στο Fabric μπορεί να χρειαστεί να διακοπεί. Για παράδειγμα, για να ενεργοποιήσετε τη δημιουργία ευρετηρίων ομαδοποιημένων στηλών σε έναν υπάρχοντα πίνακα, τα οποία δεν μπορούν να δημιουργηθούν όταν εκτελείται κατοπτρισμός.

Προϋποθέσεις

Διακοπή κατοπτρισμού της βάσης δεδομένων SQL στο OneLake στο Fabric

Τα παρακάτω παραδείγματα PowerShell σταματούν τον κατοπτρισμό μιας βάσης δεδομένων SQL στο OneLake στο Fabric.

Αυτό το παράδειγμα δέσμης Connect-AzAccountενεργειών χρησιμοποιεί το , ένα ψευδώνυμο για az login την προτροπή για διαπιστευτήρια. Χρησιμοποιεί αυτά τα διαπιστευτήρια για να αποκτήσει ένα διακριτικό πρόσβασης για χρήση στις κλήσεις REST API. Η SQLCMD χρησιμοποιεί το περιβάλλον του λογαριασμού που δόθηκε στο Connect-AzAccount.

Στο παρακάτω σενάριο, πρέπει να δώσετε το αναγνωριστικό χώρου εργασίας και το αναγνωριστικό βάσης δεδομένων. Και τα δύο βρίσκονται στη διεύθυνση URL. https://powerbi.com/groups/<fabric_workspace_id>/sqldatabases/<fabric_sql_database_id>. Η πρώτη συμβολοσειρά στη διεύθυνση URL είναι το αναγνωριστικό χώρου εργασίας Fabric και η δεύτερη συμβολοσειρά είναι το αναγνωριστικό βάσης δεδομένων SQL.

  • Αντικαταστήστε <your workspace id> το με το αναγνωριστικό χώρου εργασίας Fabric. Μπορείτε να βρείτε εύκολα το αναγνωριστικό ενός χώρου εργασίας στη διεύθυνση URL, είναι η μοναδική συμβολοσειρά μέσα σε δύο / χαρακτήρες μετά /groups/ από το παράθυρο του προγράμματος περιήγησης.
  • Αντικαταστήστε <your database id> με τη βάση δεδομένων SQL στο αναγνωριστικό βάσης δεδομένων Fabric. Μπορείτε να βρείτε εύκολα το αναγνωριστικό του στοιχείου βάσης δεδομένων στη διεύθυνση URL, είναι η μοναδική συμβολοσειρά μέσα σε δύο / χαρακτήρες μετά /sqldatabases/ στο παράθυρο του προγράμματος περιήγησής σας.

Αυτή η δέσμη ενεργειών παρουσιάζει τα εξής:

  1. Ανακτήστε ένα διακριτικό πρόσβασης χρησιμοποιώντας Get-AzAccessToken και μετατρέψτε το από μια ασφαλή συμβολοσειρά. Εάν χρησιμοποιείτε το PowerShell 7, το ConvertFrom-SecureString είναι επίσης μια επιλογή.
  2. Συναρμολόγηση κλήσης API.
  3. Κλήση κλήσης API.
Import-Module Az.Accounts

az login

$workspaceid = '<your workspace id>' # Find in the URL
$databaseid = '<your database id>' # Find in the URL

$headers = $null

# 1. Get the access token and add it to the headers

$access_token = (Get-AzAccessToken -AsSecureString -ResourceUrl https://api.fabric.microsoft.com)

$ssPtr = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($access_token.Token)

try {
$headers = @{ 
       Authorization = $access_token.Type + ' ' + ([System.Runtime.InteropServices.Marshal]::PtrToStringBSTR($ssPtr))
    }

$access_token.UserId -match('^[^@]+') | Out-Null

$stopMirroringUri = "https://api.fabric.microsoft.com/v1/workspaces/$workspaceid/sqlDatabases/$databaseid/stopMirroring"

$parameters = @{
        Method="Post"
        Headers=$headers
        Uri = $stopMirroringUri
    }

Invoke-RestMethod @parameters -ErrorAction Stop

 } finally {
    # The following lines ensure that sensitive data is not left in memory.
    $headers = [System.Runtime.InteropServices.Marshal]::ZeroFreeBSTR($ssPtr)
}

Έναρξη κατοπτρισμού της βάσης δεδομένων SQL στο OneLake στο Fabric

Τα παρακάτω παραδείγματα PowerShell ξεκινούν τον κατοπτρισμό μιας βάσης δεδομένων SQL στο OneLake στο Fabric.

Αυτό το παράδειγμα δέσμης Connect-AzAccountενεργειών χρησιμοποιεί το , ένα ψευδώνυμο για az login την προτροπή για διαπιστευτήρια. Χρησιμοποιεί αυτά τα διαπιστευτήρια για να αποκτήσει ένα διακριτικό πρόσβασης για χρήση στις κλήσεις REST API. Η SQLCMD χρησιμοποιεί το περιβάλλον του λογαριασμού που δόθηκε στο Connect-AzAccount.

Στην ακόλουθη δέσμη ενεργειών, αντικαταστήστε <your workspace id> το με το αναγνωριστικό χώρου εργασίας Fabric σας. Μπορείτε να βρείτε εύκολα το αναγνωριστικό ενός χώρου εργασίας στη διεύθυνση URL, είναι η μοναδική συμβολοσειρά μέσα σε δύο / χαρακτήρες μετά /groups/ από το παράθυρο του προγράμματος περιήγησης. Για παράδειγμα, 11aa111-a11a-1111-1abc-aa1111aaaa στο https://fabric.microsoft.com/groups/11aa111-a11a-1111-1abc-aa1111aaaa/.

Αυτή η δέσμη ενεργειών παρουσιάζει τα εξής:

  1. Ανακτήστε ένα διακριτικό πρόσβασης χρησιμοποιώντας Get-AzAccessToken και μετατρέψτε το από μια ασφαλή συμβολοσειρά. Εάν χρησιμοποιείτε το PowerShell 7, το ConvertFrom-SecureString είναι επίσης μια επιλογή.
  2. Συναρμολόγηση κλήσης API.
  3. Κλήση κλήσης API.
Import-Module Az.Accounts

az login

$workspaceid = '<your workspace id>' # Find in the URL
$databaseid = '<your database id>' # Find in the URL

$headers = $null

# 1. Get the access token and add it to the headers

$access_token = (Get-AzAccessToken -AsSecureString -ResourceUrl https://api.fabric.microsoft.com)

$ssPtr = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($access_token.Token)

try {
$headers = @{ 
       Authorization = $access_token.Type + ' ' + ([System.Runtime.InteropServices.Marshal]::PtrToStringBSTR($ssPtr))
    }

$access_token.UserId -match('^[^@]+') | Out-Null

$startMirroringUri = "https://api.fabric.microsoft.com/v1/workspaces/$workspaceid/sqlDatabases/$databaseid/startMirroring"

$parameters = @{
        Method="Post"
        Headers=$headers
        Uri = $startMirroringUri
    }

Invoke-RestMethod @parameters -ErrorAction Stop

 } finally {
    # The following lines ensure that sensitive data is not left in memory.
    $headers = [System.Runtime.InteropServices.Marshal]::ZeroFreeBSTR($ssPtr)
}