Estratégias de Backup e Restore
-
Upload
fabricio-catae -
Category
Technology
-
view
103 -
download
2
Transcript of Estratégias de Backup e Restore
![Page 1: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/1.jpg)
Fabricio Catae e Thiago Iacopini (Microsoft)
Estratégias de Backup e Restore
![Page 2: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/2.jpg)
Agenda
• Transaction Log• Tipos de Backup• Modelos de Recuperação• Log Shipping• Estratégias de Restore
![Page 3: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/3.jpg)
1. Transaction Log
![Page 4: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/4.jpg)
Repositório de Dados
Arquivos de DadosPrimário (.MDF)
Secundários (.NDF)
![Page 5: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/5.jpg)
Transação
• Unidade de Operação• Pode ser composta por múltiplas operações
• Ações Possíveis• Commit• Rollback
![Page 6: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/6.jpg)
Exemplo de Transação : Casal reformando a sala
BEGIN TRANSACTION
Pintar parede da sala de verdeColocar um abajur marrom na mesaComprar um sofá creme no lugar do azulSe não combinar, ROLLBACK TRANSACTION
COMMIT TRANSACTION
![Page 7: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/7.jpg)
Processo de Log
Arquivo de LogBEGIN TRANSACTION (transaction_id = 299)
Apaga dados do usuárioInsert nova informacao
COMMIT TRAN (transaction_id = 299)BEGIN TRANSACTION (transaction_id = 300)
Apaga tabelaCOMMIT TRAN (transaction_id = 300)
UPDATEINSERTDELETE
![Page 8: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/8.jpg)
Processo de Rollback
• Quando iniciado, o Rollback deve restaurar o estado inicial
• Todas as modificações registram o estado ANTES e DEPOIS
• As correções são chamadas de Compensation Record
Arquivo de LogBEGIN TRANSACTION
Apaga registro (AAAA)Insert registro (BBBB)(ROLLBACK TRAN)Apaga registro (BBB) CompensationInsere registro (AAA) Compensation
Rollback completo
![Page 9: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/9.jpg)
Transaction Log
• Arquivo de Transaction Log permite efetuar o ROLLBACK das operações
• A consistência da transação é garantida pelo Transaction Log em conjunto com os Bloqueios (Locks)
• Arquivo de Log é CIRCULAR
1) Transação ativa
2) Backup de LOG pendente
Por que LOG FULL?
![Page 10: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/10.jpg)
Database Checkpoint
Log
CHECKPOINT
UPDATEINSERTDELETE
DataFiles
![Page 11: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/11.jpg)
Processo de Recovery
• Como perder dados:• Desligar o computador inesperadamente?• Faltar de energia elétrica?
Arquivo de DadosMDF/NDF
RECOVERY
Log
Transações Pendentes- REDO: COMMIT- UNDO: ROLLBACK
ANALISEBanco de
DadosONLINE
![Page 12: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/12.jpg)
Modo Emergência
• O que acontece se o arquivo de Log é perdido?• As informações do MDF/NDF estão inconsistentes• Leitura pode ser feita através do modo Emergência• O modo de emergência não possui LOG, por isso, é apenas
LEITURA• Somente usado em ÚLTIMO CASO
Arquivo de DadosMDF/NDF
RECOVERY
Log
EmergênciaREAD-ONLY
![Page 13: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/13.jpg)
2. Tipos de Backup
![Page 14: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/14.jpg)
Responsabilidade do DBA
• Banco de dados possui informações críticas• DBA jamais deve perder os dados armazenados• As informações devem se manter fisicamente
consistentes
• Backup de dados• Garantia de cópia dos dados
• BACKUP DATABASE <nome>TO DISK = ‘S:\Backup\db_crit_2011.bak’
![Page 15: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/15.jpg)
Estratégias de Backup
• Overview dos tipos de Backup• Backup Full• Backup de Database e Transaction Log• Backup Diferencial• Backup de File ou Filegroup• Modelos de Recovery
![Page 16: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/16.jpg)
Overview dos Tipos de Backup do SQL Server
Tipos de Backup DescriptionFull Todos os Data files são BackupeadosDifferential Faz o Backup apenas das Paginas de Dados que
foram alteradasTransaction Log Todas as mudanças registradas no Log desde o
ultimo Backup de Transaction LogTail-Log Backup É o Backup realizado no Transaction Log, antes de
um Restore ser realizado Copy Only Realiza o Backup do Database ou Log (Sem afetar a
sequência de Backup)File/File Group Realiza o Backup de arquivos ou filegroups
especificados
![Page 17: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/17.jpg)
Full Database Backups
![Page 18: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/18.jpg)
Transaction Log Backups
![Page 19: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/19.jpg)
Differential Backups
![Page 20: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/20.jpg)
Filegroup Backups
![Page 21: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/21.jpg)
Tail Log Backups
![Page 22: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/22.jpg)
Copy Only Backups
![Page 23: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/23.jpg)
Compressão de Backup
• Não pode ser lido por versões mais antigas do SQL Server
• Implementado no SQL Server 2008• Comprime o tamanho do arquivo no Device Destino• Aumenta a Performance de I/O, porém também eleva o Custo de CPU
Restrição
![Page 24: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/24.jpg)
3. Modelos de Recuperação
![Page 25: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/25.jpg)
Recuperando Dados
Seg10:00pm
Ter10:00pm
Qua4:23pm
CRASH
![Page 26: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/26.jpg)
Recuperando Dados
Seg10:00pm
Ter10:00pm
Qua4:23pm
RecoverySIMPLE
Restore de DatabasePerda de dados tolerável desde o último backup.
Exemplo: 1 dia.
![Page 27: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/27.jpg)
Reconstruindo os Dados
Seg10:00pm
Ter10:00pm
Qua4:23pm
CRASH
Backup Log a cada 30 minutos
![Page 28: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/28.jpg)
Reconstruindo os Dados
Seg10:00pm
Ter10:00pm
Qua4:23pm
+ + + =Restore de Log
Perda de dados tolerável desde o último backup de Log. Exemplo: 30
minutosFULL
![Page 29: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/29.jpg)
Reconstruindo os Dados
Seg10:00pm
Ter10:00pm
Qua4:23pm
RecoveryFULL
Restore do Final do Log (TAIL LOG)Recupera todos os dados, sem perda de
informação.
Restore de DatabasePerda de dados tolerável desde o último backup.
Restore de LogPerda de dados tolerável desde o último backup de
Log. Exemplo: 30 minutos
4:00pm
![Page 30: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/30.jpg)
BULK
SIMPLE
Recovery Model
FULL
![Page 31: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/31.jpg)
Modelos de Recovery
Modelo de Recovery CaracterísticasSimple • Não permite backups de Log
• Faz o reuso do arquivo de Log automaticamente
Full • Permite Backup de Log• Garante que nenhum dado sera removido do
log até que seja feito um Backup de Log• Permite o Recover do banco até um ponto
específico no TempoBulk Logged • Permite Backup de Log
• Permite operações de Bulk Copy de alta performance
• Reduz o uso de espaço em Log utilizando Minimal Logging
![Page 32: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/32.jpg)
Simple Recovery Mode
![Page 33: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/33.jpg)
Full Recovery Mode
![Page 34: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/34.jpg)
Bulk Logged Recovery Mode
![Page 35: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/35.jpg)
4. Log Shipping
![Page 36: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/36.jpg)
Log Shipping
• LSN - Log Sequence Number• Overview de Log Chain• Criação do Log Shipping• Manutenção do Log Shipping
![Page 37: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/37.jpg)
LSN – Log Sequence Number
![Page 38: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/38.jpg)
Log Chain
![Page 39: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/39.jpg)
Criação do Log Shipping
![Page 40: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/40.jpg)
Manutenção do Log Shipping
STAN
DBY
SERV
ER
LSN : 10001,10002,10003 …
![Page 41: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/41.jpg)
5. Estratégias de Restore
![Page 42: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/42.jpg)
Restaurando Backups de User Databases
• Como Funciona o Processo de Restore• Tipos de Restore• Restaurando um Banco de Dados• Restaurando um Transaction Log
![Page 43: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/43.jpg)
Processo de Restore
![Page 44: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/44.jpg)
Tipos de Restore
• Restore completo de Database• Restore de Filegroup• Restore de Páginas• Restore Online
![Page 45: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/45.jpg)
Passos para Restaurar um Banco de Dados
1. Realize um Backup de Tail-Log2. Determine o Target de Data para o Restore (somente nos modos de recovery full or bulk-logged)3. Identifique a lista de arquivos que serão utilizados5. Inicie a sequência do Restore
![Page 46: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/46.jpg)
Passos para Restaurar o Transaction Log
![Page 47: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/47.jpg)
Realizando Operações de Restore
• Restaurando uma Página Corrompida• Restaurando uma Tabela Específica• Restaurando Banco de Dados com erro em
um MDF
![Page 48: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/48.jpg)
• Cenário• Uma página de Dados de seu Banco está
corrompida2012-01-01 15:46:42.90 spid51 Error: 824, Severity: 24, State: 2.2012-01-01 15:46:42.90 spid51 SQL Server detected a logical consistency-based I/O error: incorrect pageid (expected 1:43686; actual 0:0). It occurred during a read of page (1:43686) in database ID 23 at offset 0x0000001554c000 in file 'H:\MSSQL\DATA\my_db.mdf'. Additional messages in the SQL Server error log or system event log may provide more detail. This is a severe error condition that threatens database integrity and must be corrected immediately. Complete a full database consistency check (DBCC CHECKDB). This error can be caused by many factors; for more information, see SQL Server Books Online.
Restore de Páginas Corrompidas
![Page 49: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/49.jpg)
Restore de Páginas Corrompidas
1. Obter os id(s) das páginas corrompidas2. Inicie com um Restore de Database selecionando as Páginas com problema3. Aplique os Backups de Log subsequentes
Passos a Seguir :
![Page 50: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/50.jpg)
Restaurarando uma Tabela Específica
Cenário :
Uma importante tabela precisa ser restaurada, sem que todo o Banco de Dados precise ser reescrito
![Page 51: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/51.jpg)
Restaurarando uma Tabela Específica
1. Restaure o backup do Datafile que contem a tabela2. Restaure o Backup direfencial para cada arquivo3. Restaure os Transaction Logs sequencialmente4. Realize o Recover do Database
Pré-requisito : A Tabela precisa ser criada em um Datafile separadoPassos a Seguir :
![Page 52: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/52.jpg)
Restaurando Banco de Dados com erro de MDF
Cenário :
Um dos Data Files do Banco não pode ser acessado
![Page 53: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/53.jpg)
Restaurando Banco de Dados com erro de MDF
1. Realize o Backup de Tail Log2. Restaure o backup do Database3. Restaure os Transaction Logs sequencialmente4. Restaure o restore do Tail Log
Passos a Seguir :
![Page 54: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/54.jpg)
Perguntas ?
![Page 55: Estratégias de Backup e Restore](https://reader036.fdocuments.us/reader036/viewer/2022070510/58ab78691a28abb54e8b6969/html5/thumbnails/55.jpg)
Microsoft Confidential
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee
the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.