Aplicar um hotfix para SQL Server em uma topologia de replicação transacional e espelhamento de banco de dados

Introdução

Este artigo contém as etapas que você pode seguir para instalar pacotes de serviço e hotfixes em uma instância do Microsoft SQL Server com as seguintes características:

  • A instância de SQL Server tem um ou mais bancos de dados que participam de um espelhamento de banco de dados e topologia de replicação transacional.
  • O banco de dados participa como um editor, como distribuidor ou como assinante.

Observação

O banco de dados de distribuição não pode ser espelhado. No entanto, ele pode coexistir com o banco de dados principal/editor ou com a testemunha de espelhamento de banco de dados.

Versão original do produto: SQL Server
Número de KB original: 977051

Mais informações

As etapas para aplicar hotfixes a um SQL Server que participa de um espelhamento de banco de dados ou replicação transacional são documentadas nos seguintes tópicos em documentos SQL Server:

Em um ambiente em que um SQL Server é configurado para participar da topologia de espelhamento de banco de dados e replicação transacional, se a testemunha e o distribuidor estiverem na mesma instância do servidor, as etapas de instalação serão as seguintes:

  1. O espelho
  2. A testemunha/distribuidor
  3. A entidade/publicador
  4. Os assinantes

Se a testemunha e o distribuidor não estiverem no mesmo servidor, as etapas de instalação serão as seguintes:

  1. O espelho
  2. A testemunha
  3. O distribuidor
  4. A entidade/publicador
  5. Os assinantes

Procedimento

  1. Se um servidor testemunha estiver na sessão de espelhamento de banco de dados, você deverá desabilitar o recurso de failover automático durante o processo de atualização. Para fazer isso, remova o servidor testemunha da sessão de espelhamento de banco de dados. Se o servidor não for um servidor parceiro de algumas outras sessões de espelhamento de banco de dados, siga estas etapas para desabilitar o failover automático no servidor testemunha:

    • Use a ALTER ENDPOINT instrução Transact-SQL para desabilitar o ponto de extremidade de espelhamento de banco de dados.

      Para obter mais informações, consulte Remover a testemunha de uma sessão de espelhamento de banco de dados (SQL Server).

    • Execute um backup completo do banco de dados no banco de dados principal/editor e execute o DBCC CHECKDB comando no banco de dados principal.

      Observação

      Essa etapa é opcional, no entanto, é recomendável. Essa etapa impedirá a atividade de produção. Portanto, você deve agendar uma janela de manutenção para esta etapa.

  2. Instale o service pack ou o hotfix no servidor espelho. Lembre-se de que você pode ter que atualizar vários servidores neste momento.

  3. Instale o service pack ou o hotfix no servidor testemunha.

  4. Instale o pacote de serviço ou o hotfix no distribuidor. Se o distribuidor estiver localizado na mesma instância do servidor que a testemunha, essas funções de servidor serão atualizadas ao mesmo tempo.

    Observação

    A replicação será temporariamente suspensa enquanto a atualização estiver sendo aplicada. As transações permanecerão no log de transações do editor durante a atualização e serão replicadas assim que o Serviço SQL for reiniciado no distribuidor.

  5. Retome as sessões de espelhamento de banco de dados.

    Para obter mais informações sobre como retomar uma sessão de espelhamento de banco de dados, consulte Pausar ou retomar uma sessão de espelhamento de banco de dados (SQL Server).

  6. Execute um failover manual no servidor espelho para que o servidor espelho retome a função principal e do editor.

    Para obter mais informações sobre como executar manualmente o failover no servidor espelho, confira o tópico Falha Manualmente em um Banco de Dados Secundário no SQL Server 2005 ou SQL Server 2008 Books Online.

  7. Execute o DBCC CHECKDB comando no servidor principal.

    Observação

    Essa etapa é opcional, mas recomendada.

  8. Pausar as sessões de espelhamento de banco de dados.

  9. Instale o service pack ou o hotfix no novo servidor espelho.

    Observação

    O novo servidor espelho é o mesmo que o servidor principal/publicador original. Lembre-se de que você pode ter que atualizar vários servidores neste momento.

  10. Retome as sessões de espelhamento de banco de dados.

    Se a sessão de espelhamento de banco de dados tiver um servidor testemunha, desfaça as alterações feitas na etapa 1.

    Para obter mais informações sobre como fazer isso, consulte Adicionar ou substituir uma testemunha de espelhamento de banco de dados (SQL Server Management Studio).

    Observação

    Quando você desfaz as alterações feitas na etapa 1, o servidor testemunha é adicionado novamente à sessão de espelhamento de banco de dados.

  11. Instale o pacote de serviço ou o hotfix nos assinantes. Durante esse processo, a replicação do distribuidor para os assinantes será temporariamente suspensa e as transações serão enfileiradas no banco de dados de distribuição. Se o assinante for espelhado e um servidor testemunha diferente for usado, siga as etapas 1 a 3 para atualizar primeiro o servidor espelho, seguido pela testemunha.