Loading…

Database Mirroring – Como alterar o Operation Mode

Fala Pessoal,

Nesse primeiro teste, realizei todas as alterações de Operations Mode possíveis em um Database Mirroring.

Os 3 operations mode possíveis são:

  • High Safety with Automatic Failover.
  • High Safety without Automatic Failover.
  • High Performance.

Para acompanhar as alterações, utilizei a query abaixo após cada alteração de status do Mirror:

SELECT db.name, mirroring_state_desc, mirroring_safety_level_desc,mirroring_witness_state_desc

FROM sys.database_mirroring m

JOIN sys.databases db ON db.database_id = m.database_id

where name = ‘Mirror1’ –Nome da database espelhada

Teste 1: High Safety with Automatic Failover  =>  High Safety without Automatic Failover

Para realizar essa alteração, o comando abaixo deve ser executado:

USE [master]

GO

ALTER DATABASE [Mirror1] SET WITNESS OFF

Conferindo com a query de acompanhamento, temos o resultado:

Safety_Level  FULL + Witness_State UNKNOWN = High Safety without Automatic Failover

Volta: High Safety without Automatic Failover => High Safety with Automatic Failover

Para identificar o servidor de Witness, deve-se executar um IPCONFIG /all e pegar as informações de HostName e Primary DNS Suffix:

  • Host Name: Ambiente5
  • Primary DNS Suffix: lab.local
  • Completando a string tempos a porta utilizada pelo Endpoint desse servidor: 5024

Para adicionar um servidor de WITNESS em um Database Mirroring, o comando abaixo deve ser executado:

USE [master]

GO

ALTER DATABASE [Mirror1] SET WITNESS = N’TCP://Ambiente5.lab.local:5024′

Resultado após a alteração:

Safety_Level  FULL + Witness_State CONNECTED = High Safety without Automatic Failover

Teste 2: High Safety with Automatic Failover => High Performance

Para realizar essa alteração, os comandos abaixo devem ser executados:

USE [master]

ALTER DATABASE [Mirror1] SET WITNESS OFF

GO

ALTER DATABASE [Mirror1] SET SAFETY OFF

Resultado após a alteração:

Safety_Level  OFF + Witness_State UNKNOWN = High Performance

Volta: High Performance =>High Safety with Automatic Failover

Para realizar essa alteração, os comandos abaixo devem ser executados:

USE [master]

GO

ALTER DATABASE [Mirror1] SET SAFETY FULL

GO

ALTER DATABASE [Mirror1] SET WITNESS = N’TCP://Ambiente5.lab.local:5024′

GO

Resultado após a alteração:

<

Safety_Level  FULL + Witness_State CONNECTED = High Safety with Automatic Failover

Teste 3 – High Safety without Automatic Failover => High Performance

Para realizar essa alteração, o comando abaixo deve ser executado:

USE [master]

GO

ALTER DATABASE [Mirror1] SET SAFETY OFF

Resultado após a alteração:

Safety_Level  OFF + Witness_State UNKNOWN = High Performance

Volta: High Performance => High Safety without Automatic Failover

Para realizar essa alteração, o comando abaixo deve ser executado:

USE [master]

GO

ALTER DATABASE [Mirror1] SET SAFETY FULL

Resultado após a alteração:

Safety_Level  FULL + Witness_State UNKNOWN = High Safety without Automatic Failover

Com esse Post já temos um resumo de como alternar entre os Operations Mode do Database Mirroring. Após alguns testes, todas essas alterações já ficam na sua cabeça.

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

Deixe uma resposta