Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőre vonatkozik:✅ SQL-adatbázis a Microsoft Fabricben
A Fabric REST API-val elindíthatja és leállíthatja a tükrözést egy SQL-adatbázisból a Fabric OneLake-be. Ez a cikk és példaszkript bemutatja, hogyan hívhatja meg a Fabric REST API-t a PowerShell használatával a tükrözés elindításához vagy leállításához.
A OneLake-hez való SQL Database-tükrözés alapértelmezés szerint mindig fut. Előfordulhat, hogy meg kell szüntetni az SQL-adatbázis tükrözését a Fabricben. Például, ha szeretne fürtözött oszlopindexeket létrehozni egy meglévő táblán, erre nincs lehetőség, amíg a tükrözés folyamatban van.
Előfeltételek
- Meglévő Fabric kapacitásra van szüksége. Ha nem tette meg, kezdje el a Fabric próbaverzióját.
- Használhat egy meglévő munkaterületet, vagy létrehozhat egy új Háló-munkaterületet.
- SQL-adatbázis létrehozásához a munkaterület rendszergazdai vagy tagi szerepköreinek tagjának kell lennie.
- Telepítse az SQLCMD golang verzióját. A telepítéshez futtassa a
winget install sqlcmd-t Windows rendszeren. Más operációs rendszerekről lásd: aka.ms/go-sqlcmd. - PowerShell 5.1 vagy PowerShell 7.4 vagy újabb
- Az PowerShell-modul. A telepítéshez futtassa
Install-Module aza PowerShellben.
SQL-adatbázis tükrözésének leállítása a OneLake-be a Fabricben
Az alábbi PowerShell-példák leállítják az SQL-adatbázisok tükrözését a Fabric platformon lévő OneLake-ben.
Ez a példaszkript Connect-AzAccount-t, a az login álnévet használja a hitelesítő adatok kérésére. Ezekkel a hitelesítő adatokkal szerez be egy hozzáférési jogkivonatot a REST API-hívásokhoz. Az SQLCMD a megadott fiók Connect-AzAccountkörnyezetét használja.
A következő szkriptben meg kell adnia a munkaterület azonosítóját és adatbázis-azonosítóját. Mindkettő megtalálható az URL-címben.
https://powerbi.com/groups/<fabric_workspace_id>/sqldatabases/<fabric_sql_database_id>. Az URL-cím első sztringje a Háló munkaterület azonosítója, a második pedig az SQL-adatbázis azonosítója.
- Cserélje le
<your workspace id>a Fabric-munkaterület azonosítóját. A munkaterület azonosítóját könnyen megtalálhatja az URL-címben, ez a böngészőablakban található egyedi sztring, amely két/karakter között helyezkedik el/groups/után. - Cserélje le az
<your database id>elemet az SQL-adatbázisra a Fabric adatbázis-azonosítóban. Az adatbáziselem azonosítóját könnyen megtalálhatja az URL-ben; ez a böngészőablakban a/sqldatabases/utáni, két/karakter közötti egyedi sztring.
Ez a szkript a következőket mutatja be:
- Hozzáférési token lekérése a Get-AzAccessToken használatával, majd konvertálása egy biztonságos sztringből. PowerShell 7 használata esetén a ConvertFrom-SecureString is egy lehetőség.
- API-hívás összeállítása.
- API-hívás meghívása.
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-adatbázis tükrözésének megkezdése a Fabric OneLake-be
Az alábbi PowerShell-példák elkezdik tükrözni az SQL-adatbázist a OneLake in Fabricben.
Ez a példaszkript Connect-AzAccount-t, a az login álnévet használja a hitelesítő adatok kérésére. Ezekkel a hitelesítő adatokkal szerez be egy hozzáférési jogkivonatot a REST API-hívásokhoz. Az SQLCMD a megadott fiók Connect-AzAccountkörnyezetét használja.
Az alábbi szkriptben cserélje le a <your workspace id>-t a Fabric-munkaterület azonosítójával.
A munkaterület azonosítóját könnyen megtalálhatja az URL-címben, ez a böngészőablakban található egyedi sztring, amely két / karakter között helyezkedik el /groups/ után. Például a 11aa111-a11a-1111-1abc-aa1111aaaahttps://fabric.microsoft.com/groups/11aa111-a11a-1111-1abc-aa1111aaaa/-ben.
Ez a szkript a következőket mutatja be:
- Hozzáférési token lekérése a Get-AzAccessToken használatával, majd konvertálása egy biztonságos sztringből. PowerShell 7 használata esetén a ConvertFrom-SecureString is egy lehetőség.
- API-hívás összeállítása.
- API-hívás meghívása.
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)
}