Atualizar bancos de dados replicadosUpgrade Replicated Databases

ESTE TÓPICO APLICA-SE A: simSQL Server (somente Windows)nãoBanco de Dados SQL do Microsoft AzurenãoAzure SQL Data WarehousenãoParallel Data Warehouse THIS TOPIC APPLIES TO: yesSQL Server (Windows only)noAzure SQL DatabasenoAzure SQL Data WarehousenoParallel Data Warehouse

SQL ServerSQL Server é compatível com a atualização de bancos de dados replicados de versões anteriores do SQL ServerSQL Server; não é necessário interromper a atividade de outros nós durante o upgrade de um nó.supports upgrading replicated databases from previous versions of SQL ServerSQL Server; it is not required to stop activity at other nodes while a node is being upgraded. Verifique se você está em conformidade com as regras que dizem respeito às versões suportadas em uma topologia:Ensure that you adhere to the rules regarding which versions are supported in a topology:

  • Um Distribuidor pode ser de qualquer versão, desde que ela seja maior ou igual à do Publicador (em muitos casos, o Distribuidor tem a mesma instância que o Publicador).A Distributor can be any version as long as it is greater than or equal to the Publisher version (in many cases the Distributor is the same instance as the Publisher).

  • Um Publicador pode ser de qualquer versão, contanto que ela seja menor ou igual à versão do Distribuidor.A Publisher can be any version as long as it less than or equal to the Distributor version.

  • A versão de assinante depende do tipo de publicação:Subscriber version depends on the type of publication:

    • Um Assinante de uma publicação transacional pode ser de qualquer uma das duas versões do Publicador.A Subscriber to a transactional publication can be any version within two versions of the Publisher version. Por exemplo: um Publicador do SQL Server 2012 (11.x)SQL Server 2012 (11.x) pode ter Assinantes do SQL Server 2014 (12.x)SQL Server 2014 (12.x) e do SQL Server 2016 (13.x)SQL Server 2016 (13.x) ; e um Editor do SQL Server 2016 (13.x)SQL Server 2016 (13.x) pode ter Assinantes do SQL Server 2014 (12.x)SQL Server 2014 (12.x) e do SQL Server 2012 (11.x)SQL Server 2012 (11.x) .For example: a SQL Server 2012 (11.x)SQL Server 2012 (11.x) Publisher can have SQL Server 2014 (12.x)SQL Server 2014 (12.x) and SQL Server 2016 (13.x)SQL Server 2016 (13.x) Subscribers; and a SQL Server 2016 (13.x)SQL Server 2016 (13.x) Publisher can have SQL Server 2014 (12.x)SQL Server 2014 (12.x) and SQL Server 2012 (11.x)SQL Server 2012 (11.x) Subscribers.

    • Um Assinante de uma publicação de mesclagem pode ser de qualquer versão menor ou igual à do Publicador.A Subscriber to a merge publication can be any version less than or equal to the Publisher version.

Observação

Esse artigo está disponível na documentação de Ajuda da instalação e nos Manuais Online do SQL ServerSQL Server.This article is available in the Setup Help documentation and in SQL ServerSQL Server Books Online. Os links do artigo que aparecem em negrito na documentação da Ajuda da instalação se referem a artigos que só estão disponíveis nos Manuais Online.article links that appear as bold text in the Setup Help documentation refer to articles that are only available in Books Online. Crie uma estratégia de upgrade para o Publicador, o Assinante e o Distribuidor usando as opções descritas nesta postagem.You can design an upgrade strategy for the Publisher, Subscriber and Distributor using the options outlined in this post.

Executar o Log Reader Agent para replicação transacional antes da atualizaçãoRun the Log Reader Agent for Transactional Replication Before Upgrade

Antes de fazer upgrade para o SQL ServerSQL Server, você deve verificar se todas as transações confirmadas das tabelas publicadas foram processadas pelo Agente de Leitor de Log.Before you upgrade SQL ServerSQL Server, you must make sure that all committed transactions from published tables have been processed by the Log Reader Agent. Para isso, execute as seguintes etapas para cada banco de dados que contém publicações transacionais:To make sure that all transactions have been processed, perform the following steps for each database that contains transactional publications:

  1. Verifique se o Log Reader Agent está executando para o banco de dados.Make sure that the Log Reader Agent is running for the database. Por padrão, o agente é executado continuamente.By default, the agent runs continuously.

  2. Interrompa a atividade de usuário em tabelas publicadas.Stop user activity on published tables.

  3. Conceda um tempo para que o Log Reader Agent copie transações para o banco de dados de distribuição e, depois, interrompa o agente.Allow time for the Log Reader Agent to copy transactions to the distribution database, and then stop the agent.

  4. Execute sp_replcmds para verificar se todas as transações foram processadas.Execute sp_replcmds to verify that all transactions have been processed. O conjunto de resultados deste procedimento deve ser vazio.The result set from this procedure should be empty.

  5. Execute sp_replflush para fechar a conexão de sp_replcmds.Execute sp_replflush to close the connection from sp_replcmds.

  6. Faça o upgrade do servidor para a última versão do SQL ServerSQL Server.Perform the server upgrade to the latest verison of SQL ServerSQL Server.

  7. Reinicie o SQL ServerSQL Server Agent e o Log Reader Agent se eles não iniciarem automaticamente depois da atualização.Restart SQL ServerSQL Server Agent and the Log Reader Agent if they do not start automatically after the upgrade.

Executar agentes para replicação de mesclagem após a atualizaçãoRun Agents for Merge Replication After Upgrade

Depois da atualização, execute o Snapshot Agent para cada publicação de mesclagem e o Merge Agent para cada assinatura a fim de atualizar os metadados de replicação.After upgrade, run the Snapshot Agent for each merge publication and the Merge Agent for each subscription to update replication metadata. Você não precisa aplicar o novo instantâneo, pois não é necessário reinicializar assinaturas.You do not have to apply the new snapshot, because it is not necessary to reinitialize subscriptions. Metadados de assinatura são atualizados a primeira vez que o Merge Agent é executado após a atualização.Subscription metadata is updated the first time the Merge Agent is run after upgrade. Isso significa que o banco de dados de assinatura pode permanecer online e ativo durante a atualização do Publicador.This means that the subscription database can remain online and active during the Publisher upgrade.

A replicação de mesclagem armazena metadados de publicação e de assinatura em várias tabelas do sistema nos bancos de dados de publicação e de assinatura.Merge replication stores publication and subscription metadata in a number of system tables in the publication and subscription databases. Executar o Snapshot Agent atualiza os metadados de publicação, e executar o Merge Agent atualiza os metadados de assinatura.Running the Snapshot Agent updates publication metadata and running the Merge Agent updates subscription metadata. Só é necessário gerar um instantâneo de publicação.It is only required to generate a publication snapshot. Se uma publicação de mesclagem usar filtros com parâmetros, cada partição também terá um instantâneo.If a merge publication uses parameterized filters, each partition also has a snapshot. Não é necessário atualizar esses instantâneos particionados.It is not necessary to update these partitioned snapshots.

Execute os agentes do SQL Server Management StudioSQL Server Management Studio, Replication Monitor ou da linha de comando.Run the agents from SQL Server Management StudioSQL Server Management Studio, Replication Monitor, or from the command line. Para obter mais informações sobre como executar o Agente de Instantâneo, consulte os seguintes artigos:For more information about running the Snapshot Agent, see the following articles:

Atualizando as edições Standard, Workgroup ou ExpressUpgrading to Standard, Workgroup, or Express Editions

Antes de fazer upgrade de uma edição do SQL ServerSQL Server para outra, verifique se há suporte para a funcionalidade atualmente utilizada na edição para a qual deseja fazer upgrade.Before upgrading from one edition of SQL ServerSQL Server to another, verify that the functionality you are currently using is supported in the edition to which you are upgrading. Para obter mais informações, consulte a seção sobre Replicação em Edições e recursos com suporte do SQL Server.For more information, see the section on Replication in Editions and supported features of SQL Server.

Sincronização da Web para replicação de mesclagem.Web Synchronization for Merge Replication

A opção de sincronização da Web para replicação de mesclagem requer que o SQL ServerSQL Server Replication Listener (replisapi.dll) seja copiado para o diretório virtual do servidor IIS (Serviços de Informações da Internet) usado para sincronização.The Web synchronization option for merge replication requires that the SQL ServerSQL Server Replication Listener (replisapi.dll) be copied to the virtual directory on the Internet Information Services (IIS) server used for synchronization. Quando você configura a sincronização da Web, o arquivo é copiado para o diretório virtual pelo Assistente para Configuração da Sincronização da Web.When you configure Web synchronization, the file is copied to the virtual directory by the Configure Web Synchronization Wizard. Se você atualizar os componentes do SQL ServerSQL Server instalados no servidor IIS, deverá copiar replisapi.dll manualmente do diretório COM para o diretório virtual no servidor IIS.If you upgrade the SQL ServerSQL Server components installed on the IIS server, you must manually copy replisapi.dll from the COM directory to the virtual directory on the IIS server. Para obter mais informações sobre como configurar a sincronização da Web, veja Configurar sincronização da Web.For more information about configuring Web synchronization, see Configure Web Synchronization.

Restaurando um banco de dados replicado de uma versão anteriorRestoring a Replicated Database from an Earlier Version

Para assegurar que as configurações de replicação sejam mantidas na restauração do backup de um banco de dados replicado de uma versão anterior, restaure para um servidor e um banco de dados que tenham os mesmos nomes que o servidor e o banco de dados dos quais foi obtido o backup.To ensure replication settings are retained when restoring a backup of a replicated database from a previous version: restore to a server and database with the same names as the server and database at which the backup was taken.

Consulte TambémSee Also

Administração (Replicação) Administration (Replication)
Compatibilidade com versões anteriores de replicação Replication Backward Compatibility
Novidades (Replicação) What's New (Replication)
Atualizações de versão e edição com suporte Supported Version and Edition Upgrades
Atualizar o SQL ServerUpgrade SQL Server