Usar o PowerShell para atualizar o esquema de sincronização em um grupo de sincronização existente
Aplica-se a: Banco de Dados SQL do Azure
Importante
A Sincronização de Dados SQL será desativada em 30 de setembro de 2027. Considere migrar para soluções alternativas de replicação/sincronização de dados.
Este exemplo de Azure PowerShell atualiza o esquema de sincronização em um grupo de sincronização da Sincronização de Dados SQL existente. Quando você estiver sincronizando várias tabelas, este script ajuda a atualizar o esquema de sincronização com eficiência. Este exemplo demonstra o uso do script UpdateSyncSchema, que está disponível no GitHub como UpdateSyncSchema.ps1.
Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
Observação
Este artigo usa o módulo do PowerShell Azure Az, que é o módulo do PowerShell recomendado para interagir com o Azure. Para começar a usar o módulo do Az PowerShell, confira Instalar o Azure PowerShell. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.
Usar o Azure Cloud Shell
O Azure hospeda o Azure Cloud Shell, um ambiente de shell interativo que pode ser usado por meio do navegador. É possível usar o bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. É possível usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada no seu ambiente local.
Para iniciar o Azure Cloud Shell:
Opção | Exemplo/Link |
---|---|
Selecione Experimente no canto superior direito de um bloco de código. Selecionar Experimente não copia automaticamente o código para o Cloud Shell. | |
Acesse https://shell.azure.com ou selecione o botão Iniciar o Cloud Shell para abri-lo no navegador. | |
Selecione o botão Cloud Shell na barra de menus no canto superior direito do portal do Azure. |
Para executar o código neste artigo no Azure Cloud Shell:
Inicie o Cloud Shell.
Clique no botão Copiar no bloco de código para copiá-lo.
Cole o código na sessão do Cloud Shell pressionando Ctrl+Shift+V no Windows e no Linux ou selecionando Cmd+Shift+V no macOS.
Pressione Enter para executar o código.
Quando você opta por instalar e usar o PowerShell localmente, este tutorial exige o Az PowerShell 1.4.0 ou posterior. Se você precisa atualizar, consulte Instalar o módulo do Azure PowerShell. Se você estiver executando o PowerShell localmente, também precisará executar o Connect-AzAccount
para criar uma conexão com o Azure.
Para obter uma visão geral da Sincronização de Dados SQL, consulte O que é Sincronização de Dados SQL para Azure?
A Sincronização de Dados SQL não oferece suporte à Instância Gerenciada de SQL do Azure nem ao Azure Synapse Analytics.
Exemplos
Adicionar todas as tabelas no esquema de sincronização
O exemplo a seguir atualiza o esquema de banco de dados e adiciona todas as tabelas válidas no banco de dados hub ao esquema de sincronização.
UpdateSyncSchema.ps1 -SubscriptionId <subscriptionId> -ResourceGroupName <resourceGroupName> -ServerName <serverName> -DatabaseName <databaseName> `
-SyncGroupName <syncGroupName> -RefreshDatabaseSchema $true -AddAllTables $true
Adicionar e remover tabelas e colunas
O exemplo a seguir adiciona [dbo].[Table1]
e [dbo].[Table2].[Column1]
ao esquema de sincronização e remove [dbo].[Table3]
.
UpdateSyncSchema.ps1 -SubscriptionId <subscriptionId> -ResourceGroupName <resourceGroupName> -ServerName <serverName> -DatabaseName <databaseName> `
-SyncGroupName <syncGroupName> -TablesAndColumnsToAdd "[dbo].[Table1],[dbo].[Table2].[Column1]" -TablesAndColumnsToRemove "[dbo].[Table3]"
Parâmetros de script
O script UpdateSyncSchema tem os seguintes parâmetros:
Parâmetro | Observações |
---|---|
$subscriptionId | A assinatura na qual o grupo de sincronização é criado. |
$resourceGroupName | O grupo de recursos no qual o grupo de sincronização é criado. |
$serverName | O nome do servidor do banco de dados hub. |
$databaseName | O nome do banco de dados hub. |
$syncGroupName | O nome do grupo de sincronização. |
$memberName | Se você deseja carregar o esquema de banco de dados do membro em vez de sincronização em vez do banco de dados hub, especifique o nome do membro. Se você deseja carregar o esquema de banco de dados do hub, deixe esse parâmetro em branco. |
$timeoutInSeconds | Tempo limite quando o script atualiza o esquema de banco de dados. O padrão é 900 segundos. |
$refreshDatabaseSchema | Especifique se o script precisa atualizar o esquema de banco de dados. Se o esquema de banco de dados mudou em relação à configuração anterior (por exemplo, se você adicionou uma nova tabela ou uma nova coluna), você precisa atualizar o esquema antes de você reconfigurá-lo. O padrão é false. |
$addAllTables | Se esse valor for true, todas as colunas e tabelas válidas são adicionadas ao esquema de sincronização. Os valores de $TablesAndColumnsToAdd e $TablesAndColumnsToRemove são ignorados. |
$tablesAndColumnsToAdd | Especifique tabelas ou colunas a serem adicionadas ao esquema de sincronização. Cada nome de tabela ou coluna deve ser totalmente delimitado com o nome do esquema. Por exemplo, [dbo].[Table1] , [dbo].[Table2].[Column1] . Vários nomes de tabela ou coluna podem ser especificados e separados por uma vírgula (,). |
$tablesAndColumnsToRemove | Especifique tabelas ou colunas a serem removidas do esquema de sincronização. Cada nome de tabela ou coluna deve ser totalmente delimitado com o nome do esquema. Por exemplo, [dbo].[Table1] , [dbo].[Table2].[Column1] . Vários nomes de tabela ou coluna podem ser especificados e separados por uma vírgula (,). |
Explicação sobre o script
O script UpdateSyncSchema usa os seguintes comandos. Cada comando na tabela redireciona para a documentação específica do comando.
Comando | Observações |
---|---|
Get-AzSqlSyncGroup | Retorna informações sobre um grupo de sincronização. |
Update-AzSqlSyncGroup | Atualiza um grupo de sincronização. |
Get-AzSqlSyncMember | Retorna informações sobre um membro da sincronização. |
Get-AzSqlSyncSchema | Retorna informações sobre um esquema de sincronização. |
Update-AzSqlSyncSchema | Atualiza um esquema de sincronização. |
Conteúdo relacionado
Para saber mais sobre o Azure PowerShell, confira Documentação do Azure PowerShell.
Os exemplos de script do PowerShell do Banco de Dados SQL adicionais podem ser encontrados nos scripts do PowerShell do Banco de Dados SQL do Azure.
Para obter mais informações sobre a Sincronização de Dados SQL, consulte:
- Visão geral – Sincronizar dados entre o Banco de Dados SQL do Azure e o SQL Server com a Sincronização de Dados SQL no Azure
- Configurar sincronização de dados
- Usar o portal do Azure – Tutorial: Configurar a Sincronização de Dados SQL para sincronizar dados entre o BAnco de Dados SQL do Azure e SQL Server
- Usar o PowerShell
- Data Sync Agent – Data Sync Agent para Sincronização de Dados SQL no Azure
- Melhores práticas – Melhores práticas para a Sincronização de Dados SQL no Azure
- Monitor – monitore a Sincronização de Dados SQL com logs do Azure Monitor
- Solucionar problemas – Solucionar problemas com a Sincronização de Dados SQL no Azure
- Atualizar o esquema de sincronização
Para saber mais sobre Bancos de Dados SQL, confira: