Usando o Espelhamento de Banco de Dados do SQL Server com o

Propaganda
Usando o Espelhamento de Banco de Dados do SQL Server
com o Office SharePoint Server e o
Windows SharePoint Services
Publicado em março de 2007
As informações contidas neste documento representam a visão atual da Microsoft Corporation sobre os assuntos discutidos até a data da
publicação. A Microsoft deve reagir às constantes alterações nas condições do mercado, e sendo assim este documento não deve ser
interpretado como um compromisso por parte da Microsoft, e a Microsoft não pode garantir a precisão de qualquer informação aqui
apresentada após a data de publicação.
Este Informe Oficial tem propósito exclusivamente informativo. A MICROSOFT NÃO OFERECE GARANTIAS, EXPRESSAS, IMPLÍCITAS OU
REGULAMENTARES ACERCA DAS INFORMAÇÕES CONTIDAS NESTE DOCUMENTO.
É de responsabilidade do usuário o respeito a toda a legislação de copyright aplicável. Sem restringir os direitos autorais da marca, nenhuma
parte deste documento poderá ser reproduzida, armazenada, ou introduzida num sistema de buscas, ou transmitida de qualquer forma
(eletrônica, mecânica, através de fotocópias, ou outra), com qualquer propósito, e sem o consentimento expresso e por escrito da Microsoft
Corporation.
A Microsoft pode possuir patentes, aplicações de patentes, marcas registradas, copyright ou outros direitos de propriedade intelectual
assegurando os assuntos abordados neste documento. Exceto quando expressamente declarado, através de acordo por escrito da Microsoft, a
posse deste documento não dá direito ao uso das patentes, marcas registradas, copyright ou outra propriedade intelectual.
 2007 Microsoft Corporation. Todos os direitos reservados.
Microsoft, SharePoint, SQL Server, e Windows são marcas ou marcas registradas da Microsoft Corporation nos Estados Unidos e/ou outros
países.
Os nomes de produtos e empresas reais mencionados neste documento podem ser marcas registradas de seus respectivos donos.
Índice
Usando o Espelhamento de Banco de Dados do SQL Server com o Office SharePoint Server e o Windows SharePoint Services....1
Introdução ao Espelhamento de Banco de Dados ............................................................................................................................1
Modos do Espelhamento de Banco de Dados ..............................................................................................................................2
Segurança Associada ao Espelhamento de Banco de Dados ........................................................................................................2
Como Instalar o Espelhamento de Banco de Dados com os Produtos e Tecnologias SharePoint .....................................................4
Pré-Requisitos ..............................................................................................................................................................................4
Topologias Recomendadas ...........................................................................................................................................................4
Limites Recomendados para Bancos de Dados ............................................................................................................................6
Desempenho e Escalabilidade ......................................................................................................................................................7
Etapas da Instalação .....................................................................................................................................................................7
Espelhamento de Banco de Dados com Certificados e Recuperação Completa......................................................................8
Instalação de um Servidor “Testemunha” .............................................................................................................................11
Recuperação de uma Falha .............................................................................................................................................................14
Tipos de Failover ........................................................................................................................................................................14
Failover Automático ..............................................................................................................................................................14
Failover Manual .....................................................................................................................................................................15
Failover Forçado (possível perda de dados) ..........................................................................................................................15
Notificando os Produtos e Tecnologias SharePoint quando Ocorrer um Failover .....................................................................16
Banco de Dados de Configuração e Banco de Dados de Conteúdo de Administração ..........................................................17
Banco de Dados de Conteúdo ...............................................................................................................................................17
Banco de Dados de Pesquisa .................................................................................................................................................18
Banco de Dados de Provedor de Serviços Compartilhados (somente para o Office SharePoint Server)...............................18
Usando o Espelhamento de Banco de Dados do SQL Server
com o Office SharePoint Server e o
Windows SharePoint Services
Introdução ao Espelhamento de Banco de Dados
O espelhamento de banco de dados é uma nova tecnologia do software de banco de dados do
Microsoft® SQL Server™ 2005 que pode fornecer soluções de alta disponibilidade e alto desempenho
para a redundância de bancos de dados. No espelhamento de banco de dados, as transações são
enviadas diretamente de um banco de dados e servidor principal para um banco de dados e servidor
espelho, sempre que o buffer de registro de transações do banco de dados principal é gravado em disco.
Essa técnica pode manter o banco de dados espelho quase totalmente atualizado em relação ao banco
de dados principal. Opcionalmente, pode ser usado um terceiro servidor, um servidor “Testemunha”,
para ativar o failover automático do servidor principal para o servidor espelho.
O espelhamento de banco de dados é uma solução básica de software para o aumento da
disponibilidade do banco de dados. O espelhamento é implementado numa base por banco de dados e
trabalha somente com banco por meio de registros em massa n de dados que usam o modelo de
recuperação completo. Os modelos de recuperação simples e não suportam o espelhamento de banco
de dados.
O espelhamento de banco de dados oferece uma melhoria significativa em disponibilidade em relação
ao nível anteriormente possível com o SQL Server e fornece uma alternativa ou suplemento fácil de
gerenciar para o clustering failover ou log shipping. Quando uma sessão de espelhamento de banco de
dados é sincronizada, o espelhamento de banco de dados fornece um servidor standby que suporta
failover rápido, sem perda de dados das transações confirmadas. Durante uma sessão típica de
espelhamento, após uma falha no servidor de produção, as aplicações do cliente podem ser recuperadas
rapidamente pela reconexão com o servidor standby.
Para mais informações sobre o espelhamento de banco de dados, consulte Espelhamento de Banco de
Dados no SQL Server 2005 (http://go.microsoft.com/fwlink/?LinkId=83566&clcid=0x409).
Os administradores de servidores que executam o Microsoft Office SharePoint® Server 2007 ou o
Microsoft Windows® SharePoint Services podem usar o espelhamento de banco de dados e notificar o
Office SharePoint Server ou o Windows SharePoint Services se o servidor de banco de dados se altera
para recuperar-se rapidamente de falhas no banco de dados.
1
Modos do Espelhamento de Banco de Dados
O espelhamento de banco de dados oferece três modos de implementação. A opção selecionada
depende da maneira desejada para manipular o processo de failover.

Alta disponibilidade Essa opção de modo operacional permite sincronizar a gravação dos registros
de transações para ambos os servidores e ativa o failover automático. Para que essa opção funcione,
também é necessário possuir um servidor “Testemunha”.

Alta proteção Essa opção permite sincronizar a gravação dos registros de transações para ambos
os servidores, mas o failover é manual. Como o failover automático não faz parte dessa opção, o
servidor “Testemunha” não é usado.

Alto desempenho Essa opção não sincroniza a gravação dos registros de transações para os
servidores e, portanto, oferece alguns ganhos em desempenho. Quando essa opção é usada,
considera-se que tudo correrá bem com o espelho. Essa opção permite somente failover manual, e
o servidor “Testemunha” não é usado.
Lembre-se que o failover automático para uma cópia secundária de seus dados é o benefício real do
espelhamento de banco de dados. Portanto, a maior parte da implementação provavelmente usará o
modo de alta disponibilidade. As demais opções também oferecem um processo interno para failover,
mas é possível que você esteja mais interessado em possuir um failover automático, caso surja um
problema.
Segurança Associada ao Espelhamento de Banco de Dados
O espelhamento de banco de dados usa sessões de TCP para transportar o registro de transações de um
servidor de para outro e para monitorar a saúde atual do sistema para failovers automáticos. A
autenticação é feita no nível da sessão quando uma porta é aberta para conexão.
O espelhamento de banco de dados permite dois tipos de autenticação do SQL.

Autenticação do Windows (NTLM ou Kerberos)

Certificados
Este documento demonstra como usar o espelhamento de banco de dados com certificados. Para
informações sobre o uso da autenticação do Windows com o espelhamento de banco de dados,
consulte Exemplo: Instalação do Espelhamento de Banco de Dados Usando a Autenticação do Windows
(Transact-SQL) (http://go.microsoft.com/fwlink/?LinkId=83567&clcid=0x409).
A menos que a rede seja segura, os dados transmitidos durante a sessão devem ser criptografados. Este
documento fornece um esboço de como instalar a criptografia nos dados transmitidos por fio usando
RC4, embora o espelhamento de banco de dados suporte tanto os algoritmos de criptografia AES quanto
RC4. Para mais informações sobre segurança associada ao espelhamento de banco de dados, consulte
2
Segurança do Transporte no Espelhamento de Banco de Dados
(http://go.microsoft.com/fwlink/?LinkId=83569&clcid=0x409).
3
Como Instalar o Espelhamento de Banco de Dados com os
Produtos e Tecnologias SharePoint
Pré-Requisitos
Este documento descreve como usar o espelhamento de banco de dados do SQL Server com o Windows
SharePoint Services 3.0 ou o Office SharePoint Server 2007. Este documento considera que você possui
uma implantação de farm de servidores, e a topologia da implantação contém no mínimo um servidor
da Web de front-end e um servidor de banco de dados de back-end. Se você não usa um farm de
servidores, o espelhamento de banco de dados não lhe será útil.
Assegure-se de que o servidor principal e o servidor espelho estejam executando a mesma edição do
Microsoft SQL Server 2005. O espelhamento de dados está disponível somente nas edições Standard,
Developer e Enterprise do SQL Server 2005 com o service pack mais recente. O servidor “Testemunha”
pode executar qualquer versão do SQL Server 2005.
Topologias Recomendadas
Recomenda-se manter um mapeamento um para um do servidor principal para o servidor espelho, para
assegurar a conformidade com os Produtos e Tecnologias SharePoint. As seguintes ilustrações
demonstram algumas topologias suportadas.
4
Topologia suportada 1
Topologia suportada 2
5
Quaisquer topologias que não sejam compatíveis com o servidor principal e com o servidor espelho
devem ser evitadas. Além disso, o banco de dados de configuração e o banco de dados de conteúdo de
administração devem ser mantidos no mesmo servidor. O diagrama a seguir ilustra uma topologia não
suportada.
Topologia não suportada
Limites Recomendados para Bancos de Dados
O número recomendado de bancos de dados usados em uma única sessão de espelhamento deve ser de
no máximo 10. Cada sessão de espelhamento de banco de dados cria no mínimo dois threads para cada
banco de dados. À medida que mais bancos de dados são adicionados à sessão, o desempenho pode
piorar progressivamente, até que o sistema não seja mais capaz de responder.
Para mais informações sobre as práticas recomendadas para o uso do espelhamento de banco de dados,
consulte Espelhamento de Banco de Dados no SQL Server 2005
(http://go.microsoft.com/fwlink/?LinkId=83566&clcid=0x409).
6
Desempenho e Escalabilidade
O desempenho e a escalabilidade do espelhamento de banco de dados estão além do escopo deste
informe. O desempenho e a escalabilidade dependem de vários fatores diferentes, incluindo o que
segue:

A latência da rede é o principal fator para o desempenho.

Os registros são copiados em tempo real entre o servidor principal e o servidor espelho, e a cópia
pode causar impacto no desempenho.

Possuir mais de um servidor espelho não afeta a escalabilidade.

O processo não usa log shipping e, assim, evita o impacto sobre o desempenho.
Para mais informações sobre desempenho e escalabilidade, consulte Espelhamento de Banco de Dados
no SQL Server 2005 (http://go.microsoft.com/fwlink/?LinkId=83566&clcid=0x409).
Etapas da Instalação
As etapas desta seção fornecem instruções para o uso do Transact-SQL para instalar o espelhamento de
banco de dados em um banco de dados do SQL Server.
Para instalar o espelhamento de banco de dados com os Produtos e Tecnologias SharePoint, você deve
concluir as etapas para cada banco de dados em sua implantação.
O Windows SharePoint Services usa os seguintes bancos de dados:

Um banco de dados de configuração

Um banco de dados de conteúdo de administração

Um ou mais bancos de dados de conteúdo

Um ou mais bancos de dados de pesquisa
O Office SharePoint Server usa os seguintes bancos de dados:

Um banco de dados de configuração

Um banco de dados de conteúdo de administração

Um ou mais bancos de dados de conteúdo

Um ou mais bancos de dados de pesquisa

Um ou mais bancos de dados de Provedor de Serviços Compartilhados
7
As etapas seguintes mostram como instalar o espelhamento de banco de dados com recuperação
completa. Se você deseja desativar a recuperação completa e executar no modo de alto desempenho,
consulte Espelhamento de Banco de Dados Assíncrono (Modo de Alto Desempenho)
(http://go.microsoft.com/fwlink/?LinkId=83579&clcid=0x409). Recomenda-se o uso da recuperação
completa para manter o banco de dados sincronizado e reduzir as chances de perda dos dados.
Espelhamento de Banco de Dados com Certificados e Recuperação Completa
Cada etapa registra o servidor em que o espelhamento deve ser executado. Use o Transact-SQL para
enviar esses comandos ao SQL Server. As informações do espaço reservado são especificadas com os
sinais de menor e maior (<>). Substitua o conteúdo, em especial as senhas de exemplo, com as
informações específicas para sua implantação.
1. No servidor principal, crie um certificado e abra uma porta para o espelhamento.
--No banco de dados mestre, crie uma Chave Mestra para o banco de dados,
se necessário.
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<test1234->';
GO
-- Crie um certificado para essa instância de servidor.
USE master;
CREATE CERTIFICATE <MASTER_HostA_cert>
WITH SUBJECT = '<Master_HostA certificate>';
GO
--Crie uma extremidade de espelhamento para a instância do servidor usando
o certificado.
CREATE ENDPOINT Endpoint_Mirroring
STATE = STARTED
AS TCP (
LISTENER_PORT=5024
, LISTENER_IP = ALL
)
FOR DATABASE_MIRRORING (
AUTHENTICATION = CERTIFICATE <MASTER_HostA_cert>
, ENCRYPTION = REQUIRED ALGORITHM RC4
, ROLE = ALL
);
GO
--Faça backup do certificado do HOST_A e copie-o para o outro sistema,
HOST_B.
BACKUP CERTIFICATE MASTER_HostA_cert TO FILE =
'<c:\MASTER_HostA_cert.cer>';
GO
2. No servidor principal, faça o backup do banco de dados. Esse código usa o banco de dados de
configuração como exemplo. Faça o mesmo para todos os bancos de dados.
USE master;
--Assegure-se de que SharePoint_Config usa o modelo de recuperação
completa.
ALTER DATABASE SharePoint_Config
8
SET RECOVERY FULL;
GO
USE SharePoint_Config
BACKUP DATABASE SharePoint_Config
TO DISK = '<c:\SharePoint_Config.bak>'
WITH FORMAT
GO
BACKUP Log SharePoint_Config
TO DISK = '<c:\SharePoint_Config_log.bak>'
WITH FORMAT
GO
3. Copie o arquivo de backup para o servidor espelho. Faça o mesmo para todos os bancos de dados.
4. No servidor espelho, crie um certificado e abra uma porta para o espelhamento.
--No banco de dados mestre, crie a Chave Mestra para o banco de dados, se
necessário.
USE master;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<1234-test>';
GO
-- Crie um certificado na instância do servidor do HOST_B.
CREATE CERTIFICATE <HOST_HostB>
WITH SUBJECT = '<HOST_HostB certificate for database mirroring>';
GO
--Crie uma extremidade de espelhamento para a instância do servidor em
HOST_B.
CREATE ENDPOINT Endpoint_Mirroring
STATE = STARTED
AS TCP (
LISTENER_PORT=5024
, LISTENER_IP = ALL
)
FOR DATABASE_MIRRORING (
AUTHENTICATION = CERTIFICATE <HOST_HostB>
, ENCRYPTION = REQUIRED ALGORITHM RC4
, ROLE = ALL
);
GO
--Faça backup do certificado do HOST_B.
BACKUP CERTIFICATE <HOST_HostB> TO FILE = '<C:\HOST_HostB_cert.cer>';
GO
5. Usando qualquer método seguro de cópia, copie o arquivo de certificado de backup
(C:\HOST_HostB_cert.cer, por exemplo) para o servidor principal.
6. No servidor espelho, restaure o banco de dados a partir dos arquivos de backup. Esse código usa o
banco de dados de configuração como exemplo. Faça o mesmo para todos os bancos de dados.
RESTORE DATABASE SharePoint_Config
FROM DISK = '<c:\SharePoint_Config.bak>'
WITH NORECOVERY
GO
9
RESTORE log SharePoint_Config
FROM DISK = '<c:\SharePoint_Config_log.bak>'
WITH NORECOVERY
GO
7. No servidor espelho, crie um login para o servidor principal.
--Crie um login no HOST_B para o HOST_A
USE master;
CREATE LOGIN <MASTER_HostA_login> WITH PASSWORD = '<test1234->';
GO
--Crie um usuário para esse login.
CREATE USER <MASTER_HostA_user> FOR LOGIN <MASTER_HostA_login>;
GO
--Associe o certificado ao usuário.
CREATE CERTIFICATE <MASTER_HostA_cert>
AUTHORIZATION <MASTER_HostA_user>
FROM FILE = '<c:\MASTER_HostA_cert.cer>' --não tente usar um caminho de
rede, o SQL Server informará um erro de que a chave não é válida
GO
--Conceda permissão de CONNECT no login para a extremidade de espelhamento
remoto.
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [<MASTER_HostA_login>];
GO
8. No servidor principal, crie um login para o servidor espelho.
--Crie um login no HOST_A para o HOST_B
USE master;
CREATE LOGIN <HOST_HostB_login> WITH PASSWORD = '<1234-test>';
GO
--Crie um usuário para esse login.
CREATE USER <HOST_HostB_user> FOR LOGIN <HOST_HostB_login>;
GO
--Associe o certificado ao usuário
CREATE CERTIFICATE <HOST_HostB_cert>
AUTHORIZATION <HOST_HostB_user>
FROM FILE = '<c:\HOST_HostB_cert.cer>' -- não tente usar um caminho de
rede, o SQL Server informará um erro de que a chave não é válida
GO
-- Conceda permissão de CONNECT no login para a extremidade de
espelhamento remoto.
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [<HOST_HostB_login>];
GO
9. No servidor principal, inicie o espelhamento de banco de dados. Esse código usa o banco de dados
de configuração como exemplo. Faça o mesmo para todos os bancos de dados.
--No HOST_A, configure a instância do servidor no HOST_B como parceiro
(servidor espelho).
ALTER DATABASE SharePoint_Config
SET PARTNER = '<TCP://databasemirror.adatum.com:5024>';
GO
10
10. No servidor espelho, inicie o espelhamento de banco de dados. Esse código usa o banco de dados de
configuração como exemplo. Faça o mesmo para todos os bancos de dados.
--No HOST_B, configure a instância do servidor no HOST_A como parceiro
(servidor principal):
ALTER DATABASE SharePoint_Config
SET PARTNER = '<TCP://databasemaster.adatum.com:5024>';
GO
Instalação de um Servidor “Testemunha”
Cada etapa registra o servidor em que ele deve ser executado. Use o Transact-SQL para enviar esses
comandos ao SQL Server. As informações do espaço reservado são especificadas com os sinais de menor
e maior (<>). Substitua o conteúdo, em especial as senhas de exemplo, com as informações específicas
para sua implantação.
1. No servidor “Testemunha”, instale o certificado e abra a porta.
-- No banco de dados mestre, crie uma Chave Mestra para o banco de dados,
se necessário
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<1234test->';
GO
-- Crie um certificado para essa instância de servidor.
USE master;
CREATE CERTIFICATE <WITNESS_HostC_cert>
WITH SUBJECT = '<Witness_HostC certificate>';
GO
-- Crie uma extremidade de espelhamento para a instância do servidor
usando o certificado.
CREATE ENDPOINT Endpoint_Mirroring
STATE = STARTED
AS TCP (
LISTENER_PORT=5024
, LISTENER_IP = ALL
)
FOR DATABASE_MIRRORING (
AUTHENTICATION = CERTIFICATE <WITNESS_HostC_cert>
, ENCRYPTION = REQUIRED ALGORITHM RC4
, ROLE = ALL
);
GO
--Faça backup do certificado do HOST_C
BACKUP CERTIFICATE <WITNESS_HostC_cert> TO FILE = '<c:\
WITNESS_HostC_cert.cer>';
GO
2. Usando qualquer método seguro de cópia, copie o arquivo de certificado de backup
(C:\WITNESS_HOSTC_cert.cer, por exemplo) para o servidor principal e para o servidor espelho.
11
3. No servidor “Testemunha”, crie logins para o servidor principal e para o servidor espelho.
--Crie um login no HOST_C “Testemunha” para o HOST_A Principal
USE master;
CREATE LOGIN <MASTER_HostA_login> WITH PASSWORD = '<test1234->';
GO
--Crie um usuário para esse login.
CREATE USER <MASTER_HostA_user> FOR LOGIN <MASTER_HostA_login>;
GO
--Associe o certificado ao usuário
CREATE CERTIFICATE <MASTER_HostA_cert>
AUTHORIZATION <MASTER_HostA_user>
FROM FILE = '<c:\MASTER_HostA_cert.cer>' --não tente usar um caminho de
rede, o SQL Server informará um erro de que a chave não é válida
GO
--Conceda permissão de CONNECT no login para a extremidade de espelhamento
remoto.
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [<MASTER_HostA_login>];
GO
--Crie um Login para o Host B Espelho
CREATE LOGIN <HOST_HostB_login> WITH PASSWORD = '<1234-test>';
GO
--Crie um usuário para esse login.
CREATE USER <HOST_HostB_user> FOR LOGIN <HOST_HostB_login>;
GO
--Associe o certificado ao usuário
CREATE CERTIFICATE <HOST_HostB_cert>
AUTHORIZATION <HOST_HostB_user>
FROM FILE = '<c:\HOST_HostB_cert.cer>' --não tente usar um caminho de
rede, o SQL Server informará um erro de que a chave não é válida
GO
--Conceda permissão de CONNECT no login para a extremidade de espelhamento
remoto.
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [<HOST_HostB_login>];
GO
4. No servidor principal, crie um login para o servidor “Testemunha”. Faça o mesmo para o servidor
espelho.
--Crie um login no HostA Mestre para o HostC “Testemunha”
USE master;
CREATE LOGIN <WITNESS_HostC_login> WITH PASSWORD = '<1234test->';
GO
--Crie um usuário para esse login.
CREATE USER <WITNESS_HostC_user> FOR LOGIN <WITNESS_HostC_login>;
GO
--Associe o certificado ao usuário
CREATE CERTIFICATE <WITNESS_HostC_cert>
AUTHORIZATION <WITNESS_HostC_user>
FROM FILE = '<c:\WITNESS_HostC_cert.cer>' --não tente usar um caminho
de rede, o SQL Server informará um erro de que a chave não é válida
GO
--Conceda permissão de CONNECT no login para a extremidade de espelhamento
remoto.
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [<WITNESS_HostC_login>];
12
GO
5. No servidor principal, anexe o servidor “Testemunha”. Esse código usa o banco de dados de
configuração como exemplo. Faça o mesmo para todos os bancos de dados.
--Instale o Servidor “Testemunha”
ALTER DATABASE SharePoint_Config
SET WITNESS =
'<TCP://databasewitness.adatum.com:5024>'
GO
13
Recuperação de uma Falha
Tipos de Failover
Quando ocorre uma falha com o servidor principal, o servidor espelho pode assumir o comando, usando
um dos três mecanismos possíveis de failover:

Failover automático

Failover manual

Failover forçado
A tabela abaixo fornece as bases possíveis de failover, dependendo do modo que sua configuração
utiliza.
Alto
desempenho
Modo de segurança de alta
proteção sem “Testemunha”
Modo de segurança de alta
disponibilidade com
“Testemunha”
Failover
automático
Não
Não
Sim
Failover
manual
Não
Sim
Sim
Failover
forçado
Sim
Sim
Não
Failover Automático
O failover automático ocorre quando o servidor principal perde a comunicação com o restante da
configuração de espelhamento de banco de dados e, ao mesmo tempo, o espelho e a “Testemunha”
mantêm a comunicação. Entretanto, se todas as instâncias do servidor perdem a comunicação, não
ocorre o failover automático, mesmo que o servidor espelho e o servidor “Testemunha” recuperem a
comunicação posteriormente.
O seguinte processo ocorre quando o failover automático é ativado:
1. Se o servidor principal ainda estiver sendo executado, ele muda o estado do banco de dados
principal para DESCONECTADO e desconecta todos os clientes do banco de dados principal.
2. O servidor espelho e o servidor “Testemunha” registram que o servidor principal está indisponível.
3. Se qualquer registro estiver esperando na fila de refazer, o servidor espelho interrompe a
progressão do banco de dados de espelho. A quantidade de tempo necessária para aplicar o registro
depende da velocidade do sistema, da recente carga de trabalho e da quantidade de registros na fila
de refazer.
14
4. O banco de dados espelho anterior move-se on-line como o novo banco de dados principal, e a
recuperação organiza todas as transações não confirmadas, revertendo-as o mais rapidamente
possível. Bloqueios isolam essas transações.
5. Quando o servidor principal anterior se reconecta à sessão, reconhece que seu parceiro de failover
agora possui a função principal. O servidor principal anterior assume a função de servidor espelho,
tornando seu banco de dados o banco de dados espelho. O novo servidor espelho sincroniza o novo
banco de dados espelho com o banco de dados principal o mais rapidamente possível. Assim que o
novo servidor espelho tiver sincronizado os bancos de dados, o failover é novamente possível, mas
na direção contrária.
Para uma descrição mais detalhada do failover automático, consulte Failover Automático
(http://go.microsoft.com/fwlink/?LinkId=83690&clcid=0x409).
Failover Manual
Em geral, o failover manual ocorre quando o servidor principal e o servidor espelho ainda estão sendo
executados. O administrador toma uma decisão consciente ao trocar o banco de dados ativo do
principal para o espelho. Isso pode ser feito por diversas razões, como a atualização de um software no
servidor principal.
O seguinte processo ocorre durante um failover manual:
1. O administrador se conecta ao servidor principal e aciona os seguintes comandos do SQL para cada
banco de dados:
USE master;
ALTER DATABASE <database_name> SET PARTNER FAILOVER; -- onde
database_name é o banco de dados espelhado.
Isso inicia uma transição imediata do servidor espelho para a função principal.
2. No servidor principal anterior, os clientes são desconectados do banco de dados e as transações não
confirmadas são revertidas.
Se você executar um failover manual com uma instalação de failover automático que inclui um servidor
“Testemunha”, o principal e o espelho mudam automaticamente de funções.
Failover Forçado (possível perda de dados)
Em certas situações, o administrador pode querer forçar o failover. Um failover forçado só pode ocorrer
se não houver comunicação entre o servidor principal e o servidor espelho.
Forçar o failover pode causar perda de dados. A perda de dados é possível porque o servidor espelho
não pode se comunicar com o servidor principal e, portanto, não pode garantir que os dois bancos de
dados estejam sincronizados. O failover forçado inicia uma nova bifurcação de recuperação. Como o
banco de dados principal e o banco de dados espelho originais estão em diferentes bifurcações de
recuperação, cada banco de dados contém agora dados que não estão incluídos no outro banco de
dados: o banco de dados principal original contém quaisquer mudanças que ainda não tenham sido
enviadas de sua fila de envio para o banco de dados espelho anterior (o registro não enviado); o banco
15
de dados espelho anterior contém quaisquer mudanças que tenham ocorrido depois que o serviço foi
forçado.
O seguinte processo ocorre durante um failover forçado.
1. O administrador se conecta ao servidor espelho e aciona os seguintes comandos do SQL para cada
banco de dados:
ALTER DATABASE <database_name> SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS;
--onde <database_name> é o banco de dados espelhado.
ALTER DATABASE <database_name> SET PARTNER OFF;
RESTORE DATABASE SharePoint_Config WITH RECOVERY; --se o SQL concluir a
espera sobre o comando acima, execute este para impor a recuperação do
banco de dados
2. O servidor espelho muda imediatamente para servidor principal, e o espelhamento é suspenso.
Notificando os Produtos e Tecnologias SharePoint quando Ocorrer um
Failover
Após o failover dos servidores, o servidor espelho será o servidor ativo que hospeda seus bancos de
dados. Você deve notificar o Windows SharePoint Services ou o Office SharePoint Server sobre essa
mudança. Cada banco de dados precisa ser tratado de forma diferente quando ocorre um failover.
O Windows SharePoint Services usa os seguintes bancos de dados:
 Um banco de dados de configuração

Um banco de dados de conteúdo de administração

Um ou mais bancos de dados de conteúdo

Um ou mais bancos de dados de pesquisa
O Office SharePoint Server usa os seguintes bancos de dados:

Um banco de dados de configuração

Um banco de dados de conteúdo de administração

Um ou mais bancos de dados de conteúdo

Um ou mais bancos de dados de pesquisa

Um ou mais bancos de dados de Provedor de Serviços Compartilhados
Embora este informe enfoque as etapas manuais necessárias para notificar os Produtos e Tecnologias
SharePoint, o processo pode ser feito por meio de scripts e automatizado ao executar as etapas durante
um evento de falha de espelhamento. Para mais informações sobre esse processo, consulte Alerta sobre
Eventos de Espelhamento de Banco de Dados
(http://go.microsoft.com/fwlink/?LinkId=83691&clcid=0x409).
16
Banco de Dados de Configuração e Banco de Dados de Conteúdo de
Administração
O banco de dados de configuração e o banco de dados de conteúdo de administração estão
estreitamente integrados e sempre devem existir no mesmo servidor de banco de dados. Se um desses
bancos de dados falhar, o outro também precisará efetuar failover.
As etapas para notificar os Produtos e Tecnologias SharePoint sobre falhas nos bancos de dados são as
mesmas. Complete as seguintes etapas em cada servidor Web front-end.
1. Da linha de comando, execute o seguinte comando:
stsadm.exe -o renameserver -oldservername <OldPrincipalServer> -newservername
<NewPrincipalServer>
2. Reinicie o servidor Web front-end.
Banco de Dados de Conteúdo
Quando houver falha em um banco de dados de conteúdo, complete as seguintes etapas em somente
um servidor Web front-end.
1. Clique em Start, aponte para Programs, Administrative Tools, e então clique em SharePoint 3.0
Central Administration.
2. No site da Administração Central, clique em Application Management.
3. Na página de Gerenciamento de Aplicações, na seção SharePoint Web Application Management
clique em Content databases.
4. Na página Gerenciar Bancos de Dados de Conteúdo, clique no nome do banco de dados de conteúdo
que tenha efetuado failover.
5. Na página Gerenciar Configurações de Bancos de Dados de Conteúdo, na seção Remove Content
Database, selecione a caixa de seleção Remove content database e clique em OK.
6. Na página Gerenciar Bancos de Dados de Conteúdo, clique em Add a content database.
7. Digite as informações do banco de dados de conteúdo que você acabou de remover, mas substitua
as informações no Database Server com o nome do novo servidor principal.
8. Repita as etapas de 4 a 7 para cada banco de dados de conteúdo que tenha efetuado failover.
Você também pode usar a linha de comando para executar a mesma operação.
1. Para excluir o banco de dados com falha, digite o seguinte comando:
stsadm -o deletecontentdb -url "<http:// websitename:port>" -databasename "<ContentDBName>"
-databaseserver "<OldPrincipalServer>"
2. Para adicionar novamente o banco de dados, digite o seguinte comando:
17
stsadm -o addcontentdb -url "<http:// backupservername:port>" -databasename "
<ContentDBName>" -databaseserver "<NewPrincipalServer>"
Banco de Dados de Pesquisa
Quando houver falha em um banco de dados de pesquisa, complete as seguintes etapas em somente
um servidor de front-end da Web, mas uma vez para cada banco de dados que tenha falhado.
 Da linha de comando, execute o seguinte comando:
stsadm –o editssp –title <SearchName> –ssplogin <username> –ssppassword <userpassword> searchdatabaseserver <newSSPSearchDatabaseServerName>
Nota <username> pode ser no formato DOMAIN\username.
Banco de Dados de Provedor de Serviços Compartilhados (somente para o
Office SharePoint Server)
Quando ocorrer falha em um banco de dados de Provedor de Serviços Compartilhados (Shared Service
Provider – SSP), complete as seguintes etapas em somente um servidor de front-end da Web, mas uma
vez para cada banco de dados que tenha falhado.
 Da linha de comando, execute o seguinte comando:
stsadm –o editssp –title <SSPName> –ssplogin <username> –ssppassword <userpassword> sspdatabaseserver <newSSPDatabaseServerName>
Nota <username> pode ser no formato DOMÍNIO\nome_usuário.
18
Download