Plano de manutenção para o espelhamento de banco de dados do SQL Server

6

Estamos usando o espelhamento de banco de dados do SQL Server e estamos tentando criar um plano de manutenção de banco de dados para fazer backup do banco de dados. O problema é que, quando o servidor não é o banco de dados principal, o plano falha. Eu queria saber qual é a melhor prática nesta situação e existe uma maneira de fazer com que o plano de manutenção faça backup somente do banco de dados principal?

    
por Darren 04.05.2009 / 03:32

3 respostas

2

Não há recomendações duras e rápidas que eu tenha encontrado - Uma opção Recrie as tarefas e dependências no servidor espelho com as tarefas desativadas

Em seguida, use um alerta WMI no DATABASE_MIRRORING_STATE_CHANGE para ativar / desativar o trabalho Esse trabalho também seria executado no primário e desativaria o trabalho no failover - consulte este link para outra variação

Você pode criar um procedimento armazenado de backup com lógica para fazer backup apenas de um banco de dados que não esteja em um estado de restauração como isto

    
por 04.05.2009 / 21:23
5

Se você estiver usando o SQL 2008, a tarefa de backup terá uma adorável opção "Ignorar bancos de dados quando o estado não estiver online". Isso ignora os bancos de dados em um estado Restaurando / espelhando para você.

Para uma caixa do SQL 2000, você pode verificar a seguinte propriedade em cada banco de dados

SELECT NAME FROM sysdatabases WHERE databasepropertyex(sysdatabases .Name, 'Status') = 'ONLINE'

Para um SQL 2005 + Box você pode usar isto

SELECT NAME FROM sys.databases systemdatabases  WHERE state_desc = 'ONLINE'

Em seguida, apenas os bancos de dados de backup que atendem a esses critérios.

    
por 07.08.2009 / 10:57
1

Deveria haver uma maneira, tendo uma tarefa de instrução T-SQL no plano de manutenção executando:

declare @primary bit = 0
select @primary=1
from sys.database_mirroring
where mirroring_role = 1

e usando @primary como condição para iniciar a sequência de backup. Por favor, deixe-me saber se ajudou. Felicidades

    
por 28.07.2009 / 19:37