Sdílet prostřednictvím


Aktualizace schématu synchronizace ve stávající skupině synchronizace pomocí PowerShellu

Platí pro: Azure SQL Database

Důležité

Synchronizace dat SQL budou vyřazeny 30. září 2027. Zvažte migraci na alternativní řešení replikace nebo synchronizace dat.

Tento příklad Azure PowerShellu aktualizuje schéma synchronizace ve stávající skupině synchronizace Synchronizace dat SQL. Pokud synchronizujete několik tabulek, tento skript vám pomůže efektivně aktualizovat schéma synchronizace. Tento příklad ukazuje použití skriptu UpdateSyncSchema, který je k dispozici na GitHubu jako UpdateSyncSchema.ps1.

Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.

Poznámka:

Tento článek používá modul Azure Az PowerShell, což je doporučený modul PowerShellu pro interakci s Azure. Pokud chcete začít s modulem Az PowerShell, projděte si téma věnované instalaci Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Použití služby Azure Cloud Shell

Azure hostí interaktivní prostředí Azure Cloud Shell, které můžete používat v prohlížeči. Pro práci se službami Azure můžete v prostředí Cloud Shell použít buď Bash, nebo PowerShell. Předinstalované příkazy Cloud Shellu můžete použít ke spuštění kódu v tomto článku, aniž byste museli instalovat cokoli do místního prostředí.

Spuštění služby Azure Cloud Shell:

Možnost Příklad nebo odkaz
Zvolte Vyzkoušet v pravém horním rohu bloku kódu. Výběr Vyzkoušet automaticky nekopíruje kód do služby Cloud Shell. Snímek obrazovky znázorňující příklad možnosti Vyzkoušet pro Azure Cloud Shell
Přejděte na adresu https://shell.azure.com nebo výběrem tlačítka Spustit Cloud Shell otevřete Cloud Shell v prohlížeči. Snímek obrazovky znázorňující, jak spustit Cloud Shell v novém okně
Zvolte tlačítko Cloud Shell v pruhu nabídky v pravém horním rohu webu Azure Portal. Snímek obrazovky znázorňující tlačítko Cloud Shell na webu Azure Portal

Pokud chcete spustit kód uvedený v tomto článku ve službě Azure Cloud Shell, postupujte takto:

  1. Spusťte Cloud Shell.

  2. Vyberte tlačítko Kopírovat na bloku kódu a kód zkopírujte.

  3. Vložte kód do relace Cloud Shellu tak, že ve Windows a Linuxu vyberete Ctrl+Shift+V nebo vyberete Cmd+Shift+V v macOS.

  4. Spusťte kód stisknutím klávesy Enter.

Pokud se rozhodnete nainstalovat a používat PowerShell místně, tento kurz vyžaduje Az PowerShell 1.4.0 nebo novější. Pokud potřebujete upgrade, přečtěte si téma Instalace modulu Azure PowerShell. Pokud používáte PowerShell místně, je také potřeba spustit příkaz Connect-AzAccount pro vytvoření připojení k Azure.

Přehled Synchronizace dat SQL najdete v tématu Co je Synchronizace dat SQL pro Azure?

Synchronizace dat SQL nepodporuje službu Azure SQL Managed Instance ani Azure Synapse Analytics.

Příklady

Přidání všech tabulek do schématu synchronizace

Následující příklad aktualizuje schéma databáze a přidá do schématu synchronizace všechny platné tabulky v databázi centra.

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

Přidání a odebrání tabulek a sloupců

Následující příklad do schématu synchronizace přidá [dbo].[Table1] a [dbo].[Table2].[Column1] a odebere z něj [dbo].[Table3].

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

Parametry skriptu

Skript UpdateSyncSchema obsahuje následující parametry:

Parametr Notes
$subscriptionId Předplatné, ve kterém se skupina synchronizace vytvoří.
$resourceGroupName Skupina prostředků, ve které se skupina synchronizace vytvoří.
$serverName Název serveru s databází centra.
$databaseName Název databáze centra.
$syncGroupName Název skupiny synchronizace.
$memberName Název člena zadejte, pokud chcete schéma databáze načíst z člena synchronizace, a ne z databáze centra. Pokud chcete schéma databáze načíst z centra, ponechte tento parametr prázdný.
$timeoutInSeconds Časový limit aktualizace schématu databáze skriptem. Výchozí hodnota je 900 sekund.
$refreshDatabaseSchema Určuje, jestli má skript aktualizovat schéma databáze. Pokud se schéma databáze změnilo z předchozí konfigurace (například pokud jste přidali novou tabulku nebo nový sloupec), musíte schéma před změnou konfigurace aktualizovat. Výchozí hodnota je False.
$addAllTables Pokud je tato hodnota true, přidají se do schématu synchronizace všechny platné tabulky a sloupce. Hodnoty parametrů $TablesAndColumnsToAdd a $TablesAndColumnsToRemove se ignorují.
$tablesAndColumnsToAdd Určuje tabulky nebo sloupce, které se mají přidat do schématu synchronizace. Názvy jednotlivých tabulek a sloupců musí být úplně oddělené názvem schématu. Příklad: [dbo].[Table1], [dbo].[Table2].[Column1]. Více názvů tabulek nebo sloupců lze zadat a oddělit čárkou (,).
$tablesAndColumnsToRemove Určuje tabulky nebo sloupce, které se mají odebrat ze schématu synchronizace. Názvy jednotlivých tabulek a sloupců musí být úplně oddělené názvem schématu. Příklad: [dbo].[Table1], [dbo].[Table2].[Column1]. Více názvů tabulek nebo sloupců lze zadat a oddělit čárkou (,).

Vysvětlení skriptu

Skript UpdateSyncSchema používá následující příkazy. Každý příkaz v tabulce odkazuje na příslušnou část dokumentace.

Příkaz Notes
Get-AzSqlSyncGroup Vrátí informace o skupině synchronizace.
Update-AzSqlSyncGroup Aktualizuje skupinu synchronizace.
Get-AzSqlSyncMember Vrátí informace o členu synchronizace.
Get-AzSqlSyncSchema Vrátí informace o schématu synchronizace.
Update-AzSqlSyncSchema Aktualizuje schéma synchronizace.

Další informace o Azure PowerShellu najdete v dokumentaci k Azure PowerShellu.

Další ukázkové skripty PowerShellu pro službu SQL Database najdete v tématu Skripty PowerShellu pro službu Azure SQL Database.

Další informace o Synchronizace dat SQL najdete tady:

Další informace o službě SQL Database najdete tady: