Równie ważnym jak tworzenie kopii zapasowych jest ich późniejsze odzyskiwanie w przypadku awarii.
1) Nowy wpis:
Na początku dodajmy do naszej bazy nowy wpis:
USE AdventureWorks2008
GO
INSERT INTO HumanResources.Department (Name, GroupName)
VALUES(’Test4′, 'Test4′)
GO
3) Kasujemy plik danych:
4) Sprawdzenie działania:
Po ponownym uruchomieniu instancji baza będzie niedostępna dla użytkowników.
5) Odzyskiwanie bazy (pełna+różnicowa):
Przed przystąpieniem do właściwego trybu odzyskiwania bazy, robimy backup dziennika transakcji, który został po usunięciu przez nas pliku danych.
BACKUP LOG AdventureWorks2008
TO DISK = 'c:BackupAdventureWorks2008_3.trn’
WITH COMPRESSION, INIT, CHECKSUM, NO_TRUNCATE
GO
Teraz przejdziemy do właściwego procesu odzysku naszej uszkodzonej bazy:
RESTORE DATABASE AdventureWorks2008
FROM =’c:BackupAdventureWorks2008_1.bak’
WITH STANDBY = ’c:BackupAdventureWorks2008.stn’
GO
W tym momencie powinniśmy mieć dostęp do naszej bazy, jednak dodane nowe wpisy nie będą widoczne Test1-Test4.
W następnym kroku odzyskamy różnicową kopię danych, po tej czynności powinny pojawić się nowe wpisy: Test1-Test3.
RESTORE DATABASE AdventureWorks2008
FROM =’c:BackupAdventureWorks2008_1.dif’
WITH STANDBY = ’c:BackupAdventureWorks2008.stn’
GO
Na koniec
RESTORE DATABASE AdventureWorks2008
WITH RECOVERY
GO
6) Odzyskiwanie dzienników transakcji:
RESTORE DATABASE AdventureWorks2008
FROM =’c:BackupAdventureWorks2008_1.bak’
WITH STANDBY = ’c:BackupAdventureWorks2008.stn’
REPLACE
GO
FROM =’c:BackupAdventureWorks2008_1.trn’
WITH STANDBY = ’c:BackupAdventureWorks2008.stn’
GO
Pojawi się Test2:
RESTORE DATABASE AdventureWorks2008
FROM =’c:BackupAdventureWorks2008_2.trn’
WITH STANDBY = ’c:BackupAdventureWorks2008.stn’
GO
Pojawi się Test3 oraz Test4
RESTORE DATABASE AdventureWorks2008
FROM =’c:BackupAdventureWorks2008_3.trn’
WITH STANDBY = ’c:BackupAdventureWorks2008.stn’
GO
Po wykonaniu poniższego kodu baza będzie dostępna dla użytkowników:
RESTORE DATABASE AdventureWorks2008
WITH RECOVERY
GO
Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne. Możesz również pozostawić całkowicie anonimowy pomysł na wpis/nagranie.
Link do formularza tutaj: https://beitadmin.pl/pomysly
Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).