Download Database backup en restore 101

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Crash – Koffie – Restore – Koffie – Held!
Agenda
Introductie
 Backups; waarom eigenlijk?
 Recovery modellen
 Help! Mijn datafile is weg?
 Losgeslagen logfiles...
 Piecemeal restore, 3 gangen restore
 De master is dood, leve de master!
 Q&A

Introductie
Robert Hartskeerl
 10 jaar ervaring met SQL 2000+
 MCITP SQL 2005/2008 DBA en Developer
 Ervaring met aanverwante MS technologiën
 Maar ook Linux, MySql en Apache
 Blog: http://sqlblog.hartskeerl.nl
 Email: [email protected]
 Twitter: http://twitter.com/rhartskeerl

Waar gaat het niet over?
Backup performance
 Database snapshots
 VSS Writers en VDI
 Microsoft Data Protection Manager
 Iedere andere 3rd party backup tool
 Marked transactions
 Geavanceerde restore technieken (bv. Page
restores)

Backups. Waarom eigenlijk?

We leven van informatie die we halen uit
databases. Als we gegevens verliezen,
verliezen we ook de informatie. Essentiele
informatie die we gebruiken bij onze
dagelijkse beslissingen.
Backups. Waarom eigenlijk?









Verwijderen van data door virus, hacker
rancuneuze (ex) werknemer.
Onbedoeld verwijderen of overschrijven van data.
Kwijtraken van opslagmedia.
Beheerfouten.
Hardware falen.
Data corruptie.
Brand.
Inbraak of vernieling.
Natuurgeweld.
Recovery modellen
FULL
BULK LOGGED
• Weinig tot
geen
dataverlies
• LOG Backups
• Page restore
• Database
Mirroring
• Log Shipping
• Bulk
transacties
zijn minimaal
gelogd
• LOG Backups
SIMPLE
• Geen
logbackups
• Dataverlies
afhankelijk
van backup
frequentie
Recovery modellen
4500
4000
3500
3000
2500
2000
FULL
1500
BULK
SIMPLE
1000
500
0
INSERT
1000
INSERT
1000
BATCH
UPDATE
1000
INSERT
INTO
SELECT
DELETE
WITH
TABLOCK
Recovery modellen
Minimaal logging gebeurt alleen wanneer:
 De tabel niet gerepliceerd wordt.
 TABLOCK wordt gebruikt.
 Als de tabel geen indexen heeft worden de
data pages minimaal gelogd
 Als de tabel een geclusterde index heeft en
leeg is wordt er minimaal gelogd.
Help! Mijn datafiles zijn weg
FULL: Iedere vrijdag 20:00u
 DIFF: Iedere dag, behalve vrijdag 20:00u
 LOG: Ieder uur

Dinsdag 08:22u
FULL
LOGs
DIFF
LOGs
CRASH
F:\Data
Help! Mijn datafiles zijn weg
PRIMARY
LOG
Id
1
2
3
4
5
6
7
8
9
SpeakerName
John D.
John D.
John D.
John D.
John D.
John D.
John D.
John D.
John D.
SessionTitle
Session title 1
Session title 2
Session title 3
Session title 4
Session title 5
Session title 6
Session title 7
Session title 8
Session title 9
SlotDateTime
Ed.
6-3-2010 10:00 1
6-3-2010 12:00 1
6-3-2010 14:00 1
22-10-2010 10:00 2
22-10-2010 12:00 2
22-10-2010 14:00 2
2-4-2011 10:00 3
2-4-2011 12:00 3
2-4-2011 14:00 3
Help! Mijn datafiles zijn weg
Scenario 1 – Datafiles en logfile zijn weg
FULL
DIFF
LOG
LOG
LOG
Dinsdag
08.00
Demo 1 – Data en logfile restore
Help! Mijn datafiles zijn weg
FULL: Iedere vrijdag 20:00u
 DIFF: Iedere dag, behalve vrijdag 20:00u
 LOG: Ieder uur

Dinsdag 08:22u
FULL
LOGs
DIFF
LOGs
CRASH
G:\Data
PRIMARY
H:\Data
Help! Mijn datafiles zijn weg
LOG
Id
1
2
3
4
5
6
7
8
9
SpeakerName
John D.
John D.
John D.
John D.
John D.
John D.
John D.
John D.
John D.
SessionTitle
Session title 1
Session title 2
Session title 3
Session title 4
Session title 5
Session title 6
Session title 7
Session title 8
Session title 9
SlotDateTime
Ed.
6-3-2010 10:00 1
6-3-2010 12:00 1
6-3-2010 14:00 1
22-10-2010 10:00 2
22-10-2010 12:00 2
22-10-2010 14:00 2
2-4-2011 10:00 3
2-4-2011 12:00 3
2-4-2011 14:00 3
Help! Mijn datafiles zijn weg
Scenario 2 – Datafiles zijn weg
BACKUP
TAIL LOG
FULL
DIFF
LOG
LOG
LOG
Dinsdag
08.22
Demo 2 – Datafile restore
Losgeslagen logfiles...
Losgeslagen logfiles
Een logfile bestaat uit meerdere Virtual Log Files (VLF)
Een VLF kan inactief (0) zijn of actief (2)
VLF1
VLF2
VLF3
VLF4
VLF5
VLF6
VLF7
VLF8
BACKUP LOG sqlzat3 TO DISK = ‘sqlzat3_log.bak
INSERT INTO dbo.t1 (c1, c2) values (default);
Losgeslagen logfiles...





Een logfile bestaat uit meerdere Virtual Log
Files (VLF)
Een logfile heeft actieve en niet actieve VLFs
Niet actieve VLFs worden opnieuw gebruikt
Een logfile groeit alleen als er geen niet-actieve
VLFs meer zijn
Een actieve VLF wordt inactief bij een
CHECKPOINT onder het SIMPLE recoverymodel
en bij een LOG BACKUP bij het FULL
recoverymodel
Demo 3 – Logfile management
Piecemeal restore
Online gedeeltelijke restore in Enterprise Ed.
 Ideaal voor bijvoorbeeld grote archief
databases.
 Belangrijkste data is snel online en op de
achtergrond wordt de restore verder
uitgevoerd.

PRIMARY
CURRENT
ARCHIVE
LOG
Piecemeal restore
PRIMARY
N:\Data
LOG
CURRENT
Ed. 3+
ARCHIVE
Ed. 1-2
Id
1
2
3
4
5
6
7
8
9
SpeakerName
John D.
John D.
John D.
John D.
John D.
John D.
John D.
John D.
John D.
SessionTitle
Session title 1
Session title 2
Session title 3
Session title 4
Session title 5
Session title 6
Session title 7
Session title 8
Session title 9
SlotDateTime
Ed.
6-3-2010 10:00 1
6-3-2010 12:00 1
6-3-2010 14:00 1
22-10-2010 10:00 2
22-10-2010 12:00 2
22-10-2010 14:00 2
2-4-2011 10:00 3
2-4-2011 12:00 3
2-4-2011 14:00 3
Piecemeal Restore
Eerst moet de Primary
filegroup online en
aangeven dat we een
Partial restore gaan doen
• RESTORE db
FILEGROUP=‘Primary’ WITH
PARTIAL, NORECOVERY
Dan de volgen de overige
filegroups in volgorde van
belangrijkheid.
• RESTORE db
FILEGROUP=‘FG_A’ WITH
NORECOVERY
Na iedere sequence
moeten de logfiles weer
gerestored worden om de
database online te brengen
• RESTORE LOG… en RESTORE
WITH RECOVERY
Demo 4 – Piecemeal restore
De master is dood, leve de master!

Het restoren van systeem databases is niet
anders dan normale databases.
 MODEL en MSDB kunnen we restoren net als
normale databases
 Bij de MASTER database wordt het iets
spannender.
○ Als SQL Server niet meer start, eerst een REBUILD.
○ De MASTER database kan alleen gerestored
worden als SQL in SINGLE USER mode gestart is.
○ Daarna is het net een normale database. Ik zei ook
“iets” spannender.
Demo 5 – Restore master
Q&A
Backing Up and Restoring Databases in SQL
Server
 Blog Paul S. Randal - Backup/Restore
 SQL Cat Team – Backup performance
compression
 SQL Cat Team - Backup performance VLDB
over netwerk whitepaper
