Backup sempre ativo do SQL Server 2012, completo versus somente cópia


8

Preciso de um esclarecimento rápido sobre backup somente cópia vs backup completo, pois se refere à numeração e restauração do log de transações, se necessário.

Eu tenho a instalação do SQL Server 2012 sempre ativada para vários bancos de dados. Os grupos de disponibilidade são configurados com backup preferido na réplica.

somente backups de cópia e log de transação são possíveis na réplica. Isso significa que precisarei fazer um backup completo no primário se for necessária uma restauração do log de transações?

Obrigado

Respostas:


2

somente backups de cópia e log de transação são possíveis na réplica

Verdade.

Isso significa que precisarei fazer um backup completo no primário se for necessária uma restauração do log de transações?

Resposta curta SIM .

De BOL :

Uma cadeia de log consistente é garantida nos backups de log realizados em qualquer uma das réplicas (primária ou secundária), independentemente de seu modo de disponibilidade (confirmação síncrona ou confirmação assíncrona).

Portanto, para responder à sua pergunta, um backup COPY_ONLY não pode fazer parte de uma restauração que envolva backups de log T (fazendo uma restauração pontual). Seu objetivo é ter um conjunto de backups fora da cadeia de backup regular, NÃO impactando a sequência de restauração.

Um backup completo deve ser executado no banco de dados primário (não pode ser um backup copy_only).

Somente o backup T-log (como mencionado acima) pode ser feito no primário ou no secundário com um CAVEAT que não atrapalhará os LSNs no PRIMARY, ou seja, manterá os LSNs consistentes - independentemente de onde você fizer backups de log no grupo de disponibilidade .

O melhor é verificar se os sys.fn_hadr_backup_is_preferred_replicabackups de log usarão as preferências de backup do grupo Availablity para backups de log.

Consulte: Executando backups de log de transações usando réplicas secundárias somente leitura do grupo de disponibilidade AlwaysOn - parte 1


2
Você certamente pode usar um backup completo de COPY_ONLY e aplicar logs de transações sobre ele. Um backup completo COPY_ONLY é estruturalmente o mesmo que qualquer outro backup completo. A única diferença é que ele não redefine o bitmap diferencial. Após restaurar o COPY_ONLY completo, você pode começar a restaurar com o log de transações que contém o último LSN do backup COPY_ONLY e prosseguir com a cadeia de logs normalmente.
AMtwo

6

Isso significa que precisarei fazer um backup completo no primário se for necessária uma restauração do log de transações?

NÃO - Você pode adicionar backups t-log à restauração de um backup COPY_ONLY


2

Você pode restaurar os logs de transações em cima de um backup completo somente para cópia - isso significa que você pode usar um backup somente para cópia da réplica secundária junto com os logs de transações e realizar a recuperação pontual.

No entanto, se você estiver executando apenas backups apenas de cópia na réplica secundária, não terá um backup "real" para redefinir o bitmap diferencial na réplica primária. Se os backups diferenciais fizerem parte da sua estratégia de recuperação, você precisará fazer backups completos no primário. Se você quiser usar um backup diferencial, precisará fazer um backup completo da réplica primária para usar como base diferencial.


2

Testei com êxito usando um backup somente cópia e os backups de log que abrangem o backup somente até o momento desejado. Você precisa ter todos os backups de log. Portanto, se você tiver várias réplicas que estiver usando para fazer os backups (ocorreu um failover, por exemplo), é necessário certificar-se e acompanhá-las. Nos meus testes, simplesmente configurei as coisas para que todos os backups fossem para um local central. O SQL mantém a cadeia de log para backups de log em todos os nós no AG. Um bom artigo aqui ... http://info.tricoresolutions.com/blog/understanding-backups-with-sql-server-alwayson-high-availability-mirrors


1

Eu tive muita confusão em torno do tópico - No cluster AG, restaurando o backup de log, seguido de Cópia - somente backup completo.

Agora está funcionando bem. Podemos usar cópia apenas de backup da réplica secundária:

USE [master]
RESTORE DATABASE [xxxxx_testDB] FROM  
DISK = N'D:\Backups\FULL_COPY_ONLY\xxxxx_testDB_FULL_COPY_ONLY.bak' 
WITH  FILE = 1, 
MOVE N'xxxxx_testDB' TO N'D:\testdb\xxxxx_testDB.mdf',  
MOVE N'xxxxx_testDB_log' TO N'D:\testdb\xxxxx_testDB.ldf',  
NORECOVERY

GO


RESTORE LOG xxxxx_testDB
FROM DISK = 'D:\Backups\FULL_COPY_ONLY\xxxxx_testDB_LOG_1.trn'
WITH NORECOVERY; 
GO

RESTORE LOG xxxxx_testDB
FROM DISK = 'D:\Backups\FULL_COPY_ONLY\xxxxx_testDB_LOG_2.trn'
WITH NORECOVERY; 
GO


RESTORE DATABASE xxxxx_testDB WITH RECOVERY
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.