PowerShell gebruiken voor het bijwerken van het synchronisatieschema in een bestaande synchronisatiegroep
Van toepassing op: Azure SQL Database
Met dit Azure PowerShell-voorbeeld werkt u het synchronisatieschema bij in een bestaande synchronisatiegroep van SQL Data Sync. Wanneer u meerdere tabellen synchroniseert, helpt dit script u om het synchronisatieschema efficiënt bij te werken. In dit voorbeeld wordt het gebruik van het script UpdateSyncSchema gedemonstreerd, dat beschikbaar is op GitHub als UpdateSyncSchema.ps1.
Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.
Notitie
In dit artikel wordt gebruikgemaakt van de Azure Az PowerShell-module. Dit is de aanbevolen PowerShell-module voor interactie met Azure. Raadpleeg Azure PowerShell installeren om aan de slag te gaan met de Az PowerShell-module. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.
Azure Cloud Shell gebruiken
Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell gebruiken met Cloud Shell om met Azure-services te werken. U kunt de vooraf geïnstalleerde Cloud Shell-opdrachten gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.
Om Azure Cloud Shell op te starten:
Optie | Voorbeeld/koppeling |
---|---|
Selecteer Nu proberen in de rechterbovenhoek van een codeblok. Als u Uitproberen selecteert, wordt de code niet automatisch gekopieerd naar Cloud Shell. | |
Ga naar https://shell.azure.com, of selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. | |
Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. |
Om de code in dit artikel in Azure Cloud Shell uit te voeren:
Start Cloud Shell.
Selecteer de knop Kopiëren op een codeblok om de code te kopiëren.
Plak de code in de Cloud Shell-sessie door Ctrl+Shift+V te selecteren in Windows en Linux of door Cmd+Shift+V in macOS te selecteren.
Selecteer Invoeren om de code uit te voeren.
Als u PowerShell lokaal wilt installeren en gebruiken, is voor deze zelfstudie Az PowerShell 1.4.0 of hoger vereist. Als u PowerShell wilt upgraden, raadpleegt u De Azure PowerShell-module installeren. Als u PowerShell lokaal uitvoert, moet u ook Connect-AzAccount
uitvoeren om verbinding te kunnen maken met Azure.
Zie Gegevens synchroniseren tussen meerdere cloud- en on-premises databases met SQL Data Sync voor een overzicht van SQL Data Sync.
Belangrijk
SQL Data Sync biedt op dit moment geen ondersteuning voor Azure SQL Managed Instance.
Voorbeelden
Alle tabellen toevoegen aan het synchronisatieschema
In het volgende voorbeeld wordt het databaseschema vernieuwd en worden alle geldige tabellen in de hubdatabase aan het synchronisatieschema toegevoegd.
UpdateSyncSchema.ps1 -SubscriptionId <subscriptionId> -ResourceGroupName <resourceGroupName> -ServerName <serverName> -DatabaseName <databaseName> `
-SyncGroupName <syncGroupName> -RefreshDatabaseSchema $true -AddAllTables $true
Tabellen en kolommen toevoegen en verwijderen
In het volgende voorbeeld worden [dbo].[Table1]
en [dbo].[Table2].[Column1]
aan het synchronisatieschema toegevoegd en wordt [dbo].[Table3]
verwijderd.
UpdateSyncSchema.ps1 -SubscriptionId <subscriptionId> -ResourceGroupName <resourceGroupName> -ServerName <serverName> -DatabaseName <databaseName> `
-SyncGroupName <syncGroupName> -TablesAndColumnsToAdd "[dbo].[Table1],[dbo].[Table2].[Column1]" -TablesAndColumnsToRemove "[dbo].[Table3]"
Scriptparameters
Het script UpdateSyncSchema heeft de volgende parameters:
Parameter | Opmerkingen |
---|---|
$subscriptionId | Het abonnement waarin de synchronisatiegroep wordt gemaakt. |
$resourceGroupName | De resourcegroep waarin de synchronisatiegroep wordt gemaakt. |
$serverName | De servernaam van de hubdatabase. |
$databaseName | De naam van de hubdatabase. |
$syncGroupName | De naam van de synchronisatiegroep. |
$memberName | Geef de lidnaam op als u het databaseschema wilt laden uit het synchronisatielid in plaats van uit de hubdatabase. Als u het databaseschema uit de hub wilt laden, laat u deze parameter leeg. |
$timeoutInSeconds | Time-out waarna het script het databaseschema vernieuwt. De standaardwaarde is 900 seconden. |
$refreshDatabaseSchema | Geef aan of het script het databaseschema moet vernieuwen. Als uw databaseschema na de vorige configuratie is gewijzigd, (bijvoorbeeld als u een nieuwe tabel of kolom hebt toegevoegd) moet u het schema vernieuwen voordat u het opnieuw configureert. Standaard ingesteld op onwaar. |
$addAllTables | Als deze waarde op waar is ingesteld, worden alle geldige tabellen en kolommen aan het synchronisatieschema toegevoegd. De waarden van $TablesAndColumnsToAdd en $TablesAndColumnsToRemove worden genegeerd. |
$tablesAndColumnsToAdd | Hier kunt u opgeven welke tabellen en kolommen aan het synchronisatieschema moeten worden toegevoegd. Elke tabel- of kolomnaam moet volledig worden gescheiden met de schemanaam. Bijvoorbeeld: [dbo].[Table1] , [dbo].[Table2].[Column1] . U kunt meerdere tabel- of kolomnamen opgeven, gescheiden door een komma (,). |
$tablesAndColumnsToRemove | Hier kunt u opgeven welke tabellen en kolommen uit het synchronisatieschema moeten worden verwijderd. Elke tabel- of kolomnaam moet volledig worden gescheiden met de schemanaam. Bijvoorbeeld: [dbo].[Table1] , [dbo].[Table2].[Column1] . U kunt meerdere tabel- of kolomnamen opgeven, gescheiden door een komma (,). |
Uitleg van het script
Het script UpdateSyncSchema gebruikt de volgende opdrachten. Elke opdracht in de tabel is een koppeling naar opdracht-specifieke documentatie.
Command | Opmerkingen |
---|---|
Get-AzSqlSyncGroup | Hiermee wordt informatie over een synchronisatiegroep geretourneerd. |
Update-AzSqlSyncGroup | Werkt een synchronisatiegroep bij. |
Get-AzSqlSyncMember | Hiermee wordt informatie over een sync-lid geretourneerd. |
Get-AzSqlSyncSchema | Hiermee wordt informatie over een synchronisatieschema geretourneerd. |
Update-AzSqlSyncSchema | Werkt een synchronisatieschema bij. |
Volgende stappen
Raadpleeg de documentatie over Azure PowerShell voor meer informatie over Azure PowerShell.
Aanvullende voorbeelden van SQL Database PowerShell-scripts vindt u in Azure SQL Database PowerShell-scripts.
Zie de volgende onderwerpen voor meer informatie over SQL Data Sync:
- Overzicht: Gegevens synchroniseren tussen Azure SQL Database en SQL Server met SQL Data Sync in Azure
- Data Sync instellen
- Azure Portal - Zelfstudie: SQL Data Sync instellen om gegevens te synchroniseren tussen Azure SQL Database en SQL Server
- PowerShell gebruiken
- Data Sync Agent: Data Sync Agent voor SQL Data Sync in Azure
- Best practices: Best practices voor SQL Data Sync in Azure
- Bewaken: SQL Data Sync bewaken met Azure Monitor-logboeken
- Problemen oplossen: Problemen met SQL Data Sync in Azure oplossen
- Het synchronisatieschema bijwerken
- Transact-SQL gebruiken: De replicatie van schemawijzigingen in SQL Data Sync in Azure automatiseren
Meer informatie over SQL Database vindt u in: