Aplicar um hotfix para SQL Server em uma replicação transacional e topologia de espelhamento de banco de dados
Introdução
Este artigo contém as etapas que você pode seguir para instalar service packs e hotfixes em uma instância do Microsoft SQL Server com as seguintes características:
- A instância do SQL Server tem um ou mais bancos de dados que participam de um espelhamento de banco de dados e de uma topologia de replicação transacional.
- O banco de dados participa como publicador, 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 original do KB: 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 estão documentadas nos seguintes tópicos nos documentos do SQL Server:
Em um ambiente em que um SQL Server está configurado para participar do espelhamento de banco de dados e da topologia de replicação transacional, se a testemunha e o distribuidor estiverem na mesma instância de servidor, as etapas de instalação serão as seguintes:
- O espelho
- A testemunha/distribuidor
- O principal/editor
- O(s) assinante(s)
Se a testemunha e o distribuidor não estiverem no mesmo servidor, as etapas de instalação serão as seguintes:
- O espelho
- A testemunha
- O distribuidor
- O principal/editor
- O(s) assinante(s)
Procedimento
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/publicador e execute o
DBCC CHECKDB
comando no banco de dados principal.Observação
Esta etapa é opcional, no entanto, é recomendada. Esta etapa impedirá a atividade de produção. Portanto, você deve agendar uma janela de manutenção para esta etapa.
Instale o service pack ou o hotfix no servidor espelho. Lembre-se de que você pode ter que atualizar vários servidores neste momento.
Instale o service pack ou o hotfix no servidor testemunha.
Instale o service pack ou hotfix no distribuidor. Se o distribuidor estiver localizado na mesma instância de 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 publicador durante a atualização e serão replicadas assim que o Serviço SQL for reiniciado no distribuidor.
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).
Execute um failover manual para o servidor espelho para que o servidor espelho retome a função principal e de publicador.
Para obter mais informações sobre como executar manualmente o failover para o servidor espelho, consulte o tópico Failover manual para um banco de dados secundário no SQL Server 2005 ou nos Manuais Online do SQL Server 2008.
Execute o
DBCC CHECKDB
comando no servidor principal.Observação
Esta etapa é opcional, porém recomendada.
Pause as sessões de espelhamento de banco de dados.
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.
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.
Instale o service pack ou hotfix no(s) assinante(s). Durante esse processo, a replicação do distribuidor para o(s) assinante(s) 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 o servidor espelho primeiro, seguido pela testemunha.