Database Mirroring – Operation Mode High Safety Without Failover – Parte 1
Fala Pessoal,
Nesse post começo a testar como o Database Mirroring se comporta configurado com o Operation mode High Safety Without Automatic Failover.
Instâncias participantes dos testes:
1 – Instancia5 – Servidor Principal, referenciado no texto por Servidor A
2 – Instancia5\INST1 – Servidor Mirror, referenciado no texto por Servidor B
Nome da database espelhada: Mirror1
Script de criação da tabela Teste:
CREATE TABLE [dbo].[Teste](
[Cod] [int] IDENTITY(1,1) NOT NULL,
[Data] [datetime] NULL default(getdate()),
[Texto] [varchar](4000) NULL )
Loop de teste:
while 1=1
begin
if exists (select null from sys.databases where name = ‘MIRROR1’ and state_desc = ‘ONLINE’)
insert into mirror1..Teste(texto)
select @@servername
waitfor delay ’00:00:01′
end
Nesse teste foi simulado um Failover manual do Servidor A para o Servidor B.
Com o Mirror configurado como abaixo:
Deixei o loop rodando no servidor A e fiz um failover manual com o comando: alter database mirror1 set partner failover
Se você executar esse comando no Servidor B (Mirror) o erro abaixo é gerado. Logo, o failover manual deve ser executado no servidor A (Principal).
Ao fazer o failover no principal, temos um warning de que algumas transações sofreram rollback e o loop que estava sendo executado para de executar:
Em pouco tempo, o failover é efetuado e o mirror fica como abaixo:
O servidor B assumiu o papel de principal e o servidor A de Mirror.
Esse procedimento pode ser utilizado em instalações de Service Packs ou Migrações de Banco de Dados diminuindo o tempo de parada do SQL Server.
Artigos relacionados:
Série de Posts sobre Database Mirroring
Database Mirroring – Como alterar o Operation Mode
Database Mirroring – Operation Mode High Performance – Parte 1
Database Mirroring – Operation Mode High Performance – Parte 2
Database Mirroring – Operation Mode High Performance – Parte 3
Até o próximo teste com esse Operation Mode.
Gostou desse Post?
Cadastre seu e-mail para receber novos Posts e curta minha Página no Facebook para receber Dicas de Leituras e Eventos sobre SQL Server.
Abraços,
Fabrício Lima
MCITP – Database Administrator
Consultor e Instrutor SQL Server
Trabalha com SQL Server desde 2006