Poznámka
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete sa skúsiť prihlásiť alebo zmeniť adresáre.
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete skúsiť zmeniť adresáre.
Vzťahuje sa na:✅Databáza SQL v službe Microsoft Fabric
Rozhranie REST API služby Fabric môžete použiť na spustenie a zastavenie zrkadlenia z databázy SQL do OneLake v službe Fabric. Tento článok a vzorový skript ukazujú, ako pomocou prostredia PowerShell volať spustenie alebo zastavenie zrkadlenia rozhrania REST API služby Fabric.
Zrkadlenie databázy SQL do OneLake je predvolene vždy spustené. Existujú scenáre, v ktorých môže byť potrebné zastaviť zrkadlenie pre databázu SQL v službe Fabric. Napríklad na povolenie vytvárania klastrovaných indexov stĺpcov v existujúcej tabuľke, ktoré nie je možné vytvoriť, keď je spustené zrkadlenie.
Predpoklady
- Potrebujete existujúcu kapacitu služby Fabric. Ak nie, spustite skúšobnú verziu služby Fabric.
- Môžete použiť existujúci pracovný priestor alebo vytvoriť nový pracovný priestor služby Fabric.
- Ak chcete vytvoriť databázu SQL, musíte byť členom roly správcu alebo člena pracovného priestoru .
- Nainštalujte si verziu golang aplikácie SQLCMD. Nainštalujte ju spustením
winget install sqlcmdv systéme Windows. Ďalšie operačné systémy nájdete v téme aka.ms/go-sqlcmd. - Prostredie PowerShell 5.1 alebo PowerShell 7.4 a novšie verzie
- Modul Az PowerShell. Nainštalujte
Install-Module azju spustením prostredia PowerShell.
Zastavenie zrkadlenia databázy SQL do OneLake v službe Fabric
Nasledujúce príklady prostredia PowerShell zastavia zrkadlenie databázy SQL do OneLake v infraštruktúre.
Tento príklad skript používa Connect-AzAccountalias , alias na výzvu az login na zadanie poverení. Tieto poverenia používa na získanie prístupového tokenu, ktorý sa používa na volania rozhrania REST API. SQLCMD používa kontext konta , ktoré bolo poskytnuté funkcii Connect-AzAccount.
V nasledujúcom skripte musíte zadať ID pracovného priestoru a ID databázy. Obe nájdete v adrese URL.
https://powerbi.com/groups/<fabric_workspace_id>/sqldatabases/<fabric_sql_database_id>. Prvý reťazec v URL adrese je ID pracovného priestoru služby Fabric a druhý reťazec je ID databázy SQL.
- Nahraďte
<your workspace id>ho identifikátorom pracovného priestoru služby Fabric. ID pracovného priestoru nájdete - Nahraďte
<your database id>databázou SQL v ID databázy Fabric. ID položky databázy ľahko nájdete v adrese URL, je to jedinečný reťazec vo vnútri dvoch/znakov v/sqldatabases/okne prehliadača.
Tento skript popisuje:
- Načítajte prístupový token pomocou
Get-AzAccessToken a ho skonvertujte zo zabezpečeného reťazca . Ak používate prostredie PowerShell 7, možnosť ConvertFrom-SecureString. - Zostaviť volanie API.
- Vyvolajte volanie 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)
}
Spustenie zrkadlenia databázy SQL do OneLake v službe Fabric
Nasledujúce príklady prostredia PowerShell spustia zrkadlenie databázy SQL do OneLake v službe Fabric.
Tento príklad skript používa Connect-AzAccountalias , alias na výzvu az login na zadanie poverení. Tieto poverenia používa na získanie prístupového tokenu, ktorý sa používa na volania rozhrania REST API. SQLCMD používa kontext konta , ktoré bolo poskytnuté funkcii Connect-AzAccount.
V nasledujúcom skripte nahraďte <your workspace id> svoje ID pracovného priestoru služby Fabric. ID pracovného priestoru nájdete Napríklad 11aa111-a11a-1111-1abc-aa1111aaaa v .https://fabric.microsoft.com/groups/11aa111-a11a-1111-1abc-aa1111aaaa/
Tento skript popisuje:
- Načítajte prístupový token pomocou
Get-AzAccessToken a ho skonvertujte zo zabezpečeného reťazca . Ak používate prostredie PowerShell 7, možnosť ConvertFrom-SecureString. - Zostaviť volanie API.
- Vyvolajte volanie 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)
}