Megosztás a következőn keresztül:


PowerShell használata meglévő szinkronizálási csoport szinkronizálási sémájának frissítéséhez

A következőre vonatkozik: Azure SQL Database

Ez az Azure PowerShell-példa egy meglévő SQL Data Sync szinkronizálási csoportban frissíti a szinkronizálási sémát. Ha több táblát szinkronizál, ez a szkript segít Önnek a szinkronizálási séma hatékony frissítésében. Ez a példa a bemutatja az UpdateSyncSchema szkript használatát, amely UpdateSyncSchema.ps1 néven érhető el a GitHubon.

Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.

Megjegyzés:

Ez a cikk az Azure Az PowerShell-modult használja, amely az Azure-ral való interakcióhoz ajánlott PowerShell-modul. Az Az PowerShell-modul használatának megkezdéséhez lásd az Azure PowerShell telepítését ismertető szakaszt. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

Az Azure Cloud Shell használata

Az Azure által üzemeltetett Azure Cloud Shell egy interaktív felület, amelyet a böngészőből használhat. A Bash vagy a PowerShell segítségével is használhatja a Cloud Shellt az Azure-szolgáltatásokhoz. A Cloud Shell előre telepített parancsaival futtathatja a jelen cikkben szereplő kódot anélkül, hogy bármit telepítenie kellene a helyi környezetben.

Az Azure Cloud Shell indítása:

Beállítás Példa/hivatkozás
Kattintson a Kipróbálás elemre egy kódblokk jobb felső sarkában. A Kipróbálás lehetőségre kattintással nem másolja a kódot automatikusan a Cloud Shellbe. Screenshot that shows an example of Try It for Azure Cloud Shell.
Látogasson el a https://shell.azure.com webhelyre, vagy kattintson a Cloud Shell indítása gombra a böngészőben. Screenshot that shows how to launch Cloud Shell in a new window.
Az Azure Portal jobb felső sarkában található menüben kattintson a Cloud Shell gombra. Screenshot that shows the Cloud Shell button in the Azure portal

Az ebben a cikkben szereplő kód Azure Cloud Shellben való futtatásához:

  1. Indítsa el a Cloud Shellt.

  2. A kód másolásához válassza az adott kódblokkhoz tartozó Másolás gombot.

  3. Illessze be a kódot a Cloud Shell-munkamenetbe a Windowson és Linuxon a Ctrl Shift+V billentyűkombinációval+, vagy macOS rendszeren a Cmd+Shift+V billentyűkombinációval.

  4. A kód futtatásához nyomja le az Enter billentyűt.

Ha a PowerShell helyi telepítése és használata mellett dönt, ehhez az oktatóanyaghoz az Az PowerShell 1.4.0-s vagy újabb verziójára van szükség. Ha frissíteni szeretne, olvassa el az Azure PowerShell-modul telepítését ismertető cikket. Ha helyileg futtatja a PowerShellt, akkor emellett a Connect-AzAccount futtatásával kapcsolatot kell teremtenie az Azure-ral.

Az SQL Data Sync áttekintéséhez tekintse meg a több felhőalapú és helyszíni adatbázis közötti, az Azure SQL Data Sync segítségével végzett adatszinkronizálást ismertető cikket.

Fontos

Az SQL Data Sync jelenleg nem támogatja a felügyelt Azure SQL-példányt.

Példák

Az összes tábla hozzáadása a szinkronizálási sémához

Az alábbi példa frissíti az adatbázissémát, és a központi adatbázis összes érvényes tábláját hozzáadja a szinkronizálási sémához.

UpdateSyncSchema.ps1 -SubscriptionId <subscriptionId> -ResourceGroupName <resourceGroupName> -ServerName <serverName> -DatabaseName <databaseName> `
    -SyncGroupName <syncGroupName> -RefreshDatabaseSchema $true -AddAllTables $true

Táblák és oszlopok hozzáadása és eltávolítása

Az alábbi példa hozzáadja a szinkronizálási sémához a [dbo].[Table1] és a [dbo].[Table2].[Column1] elemet, valamint eltávolítja a [dbo].[Table3] elemet.

UpdateSyncSchema.ps1 -SubscriptionId <subscriptionId> -ResourceGroupName <resourceGroupName> -ServerName <serverName> -DatabaseName <databaseName> `
    -SyncGroupName <syncGroupName> -TablesAndColumnsToAdd "[dbo].[Table1],[dbo].[Table2].[Column1]" -TablesAndColumnsToRemove "[dbo].[Table3]"

Szkriptparaméterek

Az UpdateSyncSchema szkript a következő paramétereket tartalmazza:

Paraméter Megjegyzések
$subscriptionId Az előfizetés, amelyben a szinkronizálási csoport létrejön.
$resourceGroupName Az erőforráscsoport, amelyben a szinkronizálási csoport létrejön.
$serverName A központi adatbázis kiszolgálóneve.
$databaseName A központi adatbázis neve.
$syncGroupName A szinkronizálási csoport neve.
$memberName Akkor adja meg a tag nevét, ha a központi adatbázis helyett a szinkronizálási tagból kívánja betölteni az adatbázissémát. Ha a központi adatbázisból kívánja betölteni az adatbázissémát, akkor hagyja üresen ezt a paramétert.
$timeoutInSeconds Az időtúllépési érték, amelyet elérve a szkript frissíti az adatbázissémát. Az alapértelmezett érték 900 másodperc.
$refreshDatabaseSchema Meghatározza, hogy a szkriptnek frissítenie kell-e az adatbázissémát. Ha az adatbázisséma megváltozott az előző konfigurációtól (például ha új táblát vagy új oszlopot adott hozzá), frissítenie kell a sémát, mielőtt újrakonfigurálja. Az alapértelmezett érték a false (hamis).
$addAllTables Ha az érték true (igaz), akkor az összes érvényes tábla és oszlop hozzáadódik a szinkronizálási sémához. A $TablesAndColumnsToAdd és a $TablesAndColumnsToRemove értékeit a rendszer figyelmen kívül hagyja.
$tablesAndColumnsToAdd Meghatározza a szinkronizálási sémához hozzáadandó táblákat vagy oszlopokat. Minden tábla- vagy oszlopnevet tagolni kell a séma nevével. Például: [dbo].[Table1], [dbo].[Table2].[Column1]. Több tábla- vagy oszlopnév is megadható, és vesszővel (,) elválasztható.
$tablesAndColumnsToRemove Meghatározza a szinkronizálási sémából eltávolítandó táblákat vagy oszlopokat. Minden tábla- vagy oszlopnevet tagolni kell a séma nevével. Például: [dbo].[Table1], [dbo].[Table2].[Column1]. Több tábla- vagy oszlopnév is megadható, és vesszővel (,) elválasztható.

Szkript ismertetése

Az UpdateSyncSchema szkript a következő parancsokat használja. A táblázatban lévő összes parancs a hozzá tartozó dokumentációra hivatkozik.

Parancs Megjegyzések
Get-AzSqlSyncGroup Egy szinkronizálási csoport adatait adja vissza.
Update-AzSqlSyncGroup Frissít egy szinkronizálási csoportot.
Get-AzSqlSyncMember Egy szinkronizálási tag adatait adja vissza.
Get-AzSqlSyncSchema A szinkronizálási sémával kapcsolatos információkat adja vissza.
Update-AzSqlSyncSchema Frissít egy szinkronizálási sémát.

További lépések

Az Azure PowerShellről az Azure PowerShell dokumentációjában talál további információt.

Az Azure SQL Database PowerShell-szkriptekben további SQL Database PowerShell-szkriptminták találhatók.

Az SQL Data Sync szolgáltatással kapcsolatos további információkért lásd:

További információ az SQL Database-ről: