[ Pobierz całość w formacie PDF ]
.639 seconds (2.668MB/sec).Nie jest to takie przerażające, jak by wyglądało.Następny segment kodu tworzy kopiebezpieczeństwa bazy danych pubs, ale tym razem na określonym lokalnym napędzie taśmowym.Nie można uruchomić tego kodu, nie posiadając zainstalowanego napędu taśmowego nakomputerze z SQL Serverem 2000.Tym razem, okres ważności taśmy mija po 30 dniach i taśmapowinna zostać sformatowana przed zapisaniem oraz rozmiar bloku taśmy wynosi 8,192 bajty.Nazwą kopii bezpieczeństwa jest Pubs Backup Tape.exec sp_addumpdevice 'tape', 'pubs_tape_backup', '\\.\tape0'use pubsdbcc checkdb ('pubs') With NO_INFOMSGSBACKUP DATABASE pubs to pubs_backup WITH FORMAT,RETAIN_days = 30, MediaName = 'Pubs Backup Tape',Blocksize = 8192Polecenie DIFFERENTIAL BACKUP DATABASEJak zostało powiedziane wcześniej, kopia różnicowa kopiuje wszystkie zmodyfikowane strony zbazy danych co oznacza wszystkie strony, które zmieniły się od czasu wykonania ostatniejpełnej kopii bazy danych.Jeżeli wykonywana jest kopia różnicowa, a następnie kolejna kopiaróżnicowa, ta druga kopia różnicowa zawiera wszystkie zmiany te same co pierwsza plus wszelkiezmienione strony, które zmieniły się od czasu wykonania pierwszej kopii.Warto zauważyć, żekopia różnicowa ma sens jedynie jako kolejna po wykonaniu pełnej kopii bezpieczeństwa bazydanych.Teraz należy wykonać kopię różnicową bazy danych pubs.Po pierwsze, należy stworzyć tabelę idodać do niej jeden wiersz (czyli jest to coś nowego do archiwizowania).Nie będzie tworzonenowe urządzenie archiwizacyjnego, kopia różnicowa zostanie dodana do urządzenia zawierającegokopię bezpieczeństwa bazy danych.Można określić parametr NOINIT (jak w przykładzie) dlaprzejrzystości, nawet jeśli jest on domyślny.use pubsCreate table backuptest (col1 int not null)Insert backuptest values (1)GoBACKUP DATABASE pubs to pubs_backup WITH differential, NOINITOdpowiedz systemu:(1 row(s) affected)Processed 48 pages for database 'pubs', file 'pubs' on file 2.Processed 1 pages for database 'pubs', file 'pubs_log' on file2.BACKUP DATABASE WITH DIFFERENTIAL successfully processed 49pages in 0.486 seconds (0.811 MB/sec).Potrzeba wiele informacji aby korzystać prawidłowo z kopii różnicowych.Szersze omówienietego zagadnienia zawiera rozdział 8.Opcja RESTART jest interesująca jeżeli ma się do czynienia z kopiami bezpieczeństwa dużychbaz danych.Jeżeli utworzenie kopii nie powiedzie się z jakiegoś powodu, nie ma potrzebyrozpoczynania od samego początku; można rozpocząć w punkcie, w którym kopiowanie zostałoprzerwane i kontynuować tworzenie kopii bezpieczeństwa.Jednak, w przypadku kopii napojedynczą taśmę lub w przypadku pierwszej taśmy z zestawu należy zacząć od samegopoczątku, bez względu na ustawienie parametru RESTART.Ustawienie wstrzymania ważności w przypadku kopii taśmowychJeżeli nie zostały ustawione opcje EXPIREDATE i RETAINDAYS dla kopii taśmowej, data ważnościtaśmy jest ustawiona domyślnie na opcję konfiguracyjną serwera media retention.W raziepotrzeby można ustawić tę opcję, podobnie jak inne opcje konfiguracyjne serwera przy pomocysystemowej procedury składowej sp_configure (jest to opcja zaawansowana).Przykładowo,aby ustawić domyślną ważność na 30 dni, należy uruchomić następujący kod:exec sp_configure 'media retention', 30RECONFIGURE WITH OVERRIDENależy uruchomić ponownie SQL Server aby zmiany odniosły skutek.Domyślną konfiguracjąważności nośnika jest 0 dni (brak ustalonego okresu ważności).Polecenie BACKUP DATABASE dla plików i grupplikówSkładnia dla tworzenia kopii bezpieczeństwa plików i grup plików została tutaj przedstawiona dlazachowania kompletności opisu.Jednak, należy tworzyć kopie plików i grup plików jedynie jeślinie można wykonać kopii bezpieczeństwa całej bazy danych (lub kombinacji kopii pełnej iróżnicowej) w rozsądnym przedziale czasu.Można również tworzyć kopie grup plików z różnychinnych prawidłowych przyczyn, ale ten zaawansowany temat wykracza poza zakres tej książki.Zasadniczo, polecenie BACKUP DATABASE pozwala na tworzenie kopii bezpieczeństwapojedynczego pliku lub zbioru plików zwanego grupą plików (opisanego w rozdziale 4).Nadalpotrzebna jest kopia dziennika transakcji, jeżeli chce się korzystać z kopii plików lub grup plikóww celu odtworzenia bazy danych.BACKUP DATABASE {database_name | @database_name_var}file_or_filegroup [,.n]TO backup_device [,.n][WITH[BLOCKSIZE = {blocksize | @blocksize_variable}][[,] DESCRIPTION = {text | @text_variable}][[,] EXPIREDATE = {date | @date_var}| RETAINDAYS = {days | @days_var}][[,] PASSWORD = {pwd | @pwd_var}[[,] FORMAT | NOFORMAT][[,] {INIT | NOINIT}][[,] MEDIADESCRIPTION = {text | @text_variable}][[,] MEDIANAME = {media_name | @media_name_variable}][[,] MEDIAPASSWORD = {mediapwd | @mediapwd}][[,] [NAME = {backup_set_name | @backup_set_name_var}][[,] {NOSKIP | SKIP}][[,] {NOUNLOAD | UNLOAD}][[,] {NOREWIND | REWIND}][[,] [RESTART][[,] STATS [= percentage]]]gdziefile_or_filegroup :: ={FILE = { logical_file_name | @logical_file_name_var}|FILEGROUP = { logical_filegroup_name | @logical_filegroup_name_var}}W tej składni większość opcji zostało omówionych, z wyjątkiem następujących:" FILE oznacza nazwę pojedynczego pliku (lub zmiennej przypisanej do ścieżki i nazwypojedynczego pliku), którego kopia ma być utworzona" FILEGROUP oznacza logiczną nazwę grupy plików, której kopia ma zostać tworzona.Wszystkie pliki z danej grupy zostaną zarchiwizowane.Polecenie BACKUP LOGMożna utworzyć kopię jedynie dziennika transakcji bazy danych przy pomocy polecenia BACKUPLOG:BACKUP LOG {database_name | @database_name_var}{[WITH { NO_LOG | TRUNCATE_ONLY}]}|{TO backup_device [,
[ Pobierz całość w formacie PDF ]