Optimizing Backup and Restore Performance in SQL Server

Microsoft SQL Server oferuje następujące dwa sposoby prędkości się operacje kopia zapasowa i przywracanie:

  • Dzięki kilka urządzeń kopia zapasowa kopie zapasowe są zapisywane do wszystkich urządzeń równocześnie.Szybkość urządzenie kopia zapasowa jest jeden potencjalnych wąskiego gardła w kopia zapasowa przepustowość.Korzystanie z wielu urządzeń może zwiększyć przepustowość proporcjonalnie do liczby urządzeń używanych.Podobnie kopia zapasowa można przywrócić z wielu urządzeń równocześnie.Aby uzyskać więcej informacji zobacz "Korzystanie z wielu nośnika lub urządzeń," w dalszej części tego tematu.

  • Aby zminimalizować czas odzyskiwanie przy użyciu kombinacji kopie zapasowe dziennik transakcji pełną, różnicowej i (dla modelu odzyskiwanie Pełny lub jest rejestrowane zbiorcze).Różnicowe kopie są zazwyczaj szybsze tworzenie niż pełne kopie i zmniejszenie ilości wymaganego do odzyskania bazy danych dziennik transakcji.Aby uzyskać więcej informacji zobaczCreating Full and Differential Backups of a SQL Server Database.

Za pomocą wielu nośnika lub urządzenia

Kopiowanie danych i dziennik transakcji z urządzeń kopii zapasowych w bazie danych i dziennik transakcji plików jest wykonywane przez wątki czytnika/modułu zapisującego; jeden wątek jest przypisany do każdego urządzenie kopia zapasowa.Wydajność jest ograniczona przez albo możliwości urządzenia kopia zapasowa do dostarczania danych lub zdolność bazy danych i dziennik transakcji plików do akceptowania danych.W związku z tym, zwiększa wydajność z liczbą kopia zapasowa urządzeń, aż do maksymalnej przepustowości pliki dziennika bazy danych lub transakcję do akceptowania danych zostanie osiągnięty.

Umożliwia korzystanie z wielu urządzeń kopia zapasowa dla operacji wykonywania kopii zapasowych i przywracanie SQL Server Umożliwia równoległe we/wy, aby przyspieszyć kopia zapasowa lub operacji przywracanie, ponieważ każde urządzenie kopia zapasowa mogą być zapisywane lub odczytać w tym samym czasie innych urządzeń kopii zapasowych. For enterprises with large databases, using many backup devices can greatly reduce the time taken for backup and restore operations.SQL Server supports a maximum of 64 backup devices for a single backup operation.

Podczas zapisywania kopia zapasowa do wielu urządzeń kopia zapasowa, występuje kilka punktów wewnętrznego synchronizacji.Najbardziej istotne taki punkt występuje, gdy wszystkie dane w bazie danych wykonano jego kopii zapasowej, a ma być wykonana kopia zapasowa dziennik transakcji.

Important noteImportant Note:

Jeśli kilka urządzeń kopia zapasowa są używane do wykonywania kopii zapasowych, zaangażowane nośnika kopia zapasowa mogą być używane tylko w przypadku SQL Server Operacje wykonywania kopii zapasowych. Aby uzyskać więcej informacji zobaczUsing Backup Media.

Tworzenie i przywracania kopii zapasowych, korzystając z wielu urządzeń kopia zapasowa jest taka sama, jak tworzenie i przywracania kopii zapasowych, korzystając z jednego urządzenia.Jedyna różnica polega na należy określić wszystkich kopii zapasowych zaangażowane w proces, nie tylko jednego urządzenia.Na przykład, jeśli ma zostać utworzony, wykonywanie kopii zapasowej bazy danych zawiera trzy kopia zapasowa na taśmie urządzeń, takich jak \\.\TAPE0, \\.\TAPE1, i \\.\TAPE2, każde urządzenie taśmowe musi być określona jako część operacji wykonywania kopii zapasowej, mimo że mniej kopia zapasowa na taśmie urządzenia mogą być używane, gdy później przywrócić kopię zapasową.

Podczas tworzenia kopia zapasowa na kilka urządzeń kopii zapasowych na nośniku wymiennym, urządzenia może działać z szybkością różne szybkości i woluminy nośników mogą mieć różne ilości wolnego miejsca.Podczas operacji tworzenia kopia zapasowa Jeśli wolumin multimedialnych na urządzenie wykonywania kopii zapasowych zabraknie miejsca, operacja zatrzyma zapisywanie do tego urządzenia i monituje o podanie nowego woluminu nośnika.Dopóki nie zastąpisz woluminu wypełniony nośnika z objętością puste, to urządzenie jest zablokowane.W tym samym czasie operacji tworzenia kopia zapasowa nadal zapisywania danych do urządzenia, którego nośnika nadal mieć miejsca.Po zamianie woluminu wypełniony nośnika stają się dostępne urządzenia i wykonywania kopia zapasowa zostanie wznowione zapisywania danych do tego urządzenia.Jednak należy pamiętać, że jeśli punkt wewnętrznego synchronizacji pojawia się podczas dowolne urządzenie jest zablokowane, kopia zapasowa wstrzymuje całkowicie, dopóki urządzenie jest dokonywane dostępnych ponownie.

Przykład

Rozważmy scenariusz, który zawiera trzy kopia zapasowa na taśmie urządzeń szybkości równe do przechowywania wykonać pełną kopię zapasową bazy danych.Pierwsze dwie taśmy mają 10 gigabajtów (GB) wolnego miejsca, ale trzeci jest dostępne tylko 5 GB.Jeśli 20 GB bazy danych jest wykonywana kopia do wszystkich trzech taśm jednocześnie urządzeń kopii zapasowych, trzeciej taśmy wypełni przed zakończeniem wykonywania kopia zapasowa.Po 5 GB danych zostały zapisane na taśmie trzecich, kopia zapasowa zatrzymuje zapisywanie na trzecim urządzeniem.Operacja zablokuje tego urządzenia i monituje o podanie nowej taśmy.W tym samym czasie operacji tworzenia kopia zapasowa nadal zapisywania danych z dwoma urządzeniami.Jednak przed trzeciej taśmy są zastępowane, punkt wewnętrznego synchronizacji wystąpi.W tym punkcie całe kopia zapasowa wstrzymuje, dopóki nie zainstalowano nowej taśmy w trzecim urządzeniem.

Optymalizowanie wydajności pełny i zróżnicowanego kopii zapasowych

Tworzenie kopia zapasowa pełnych ani różnicowych składa się z następujących czynności:

  1. Kopiowanie danych z plików bazy danych do urządzenia kopia zapasowa.

  2. Kopiowanie część dziennik transakcji potrzebne do przenieść na przyszły okres w bazie danych do stanu z tego samego urządzenia kopia zapasowa.

Tworzenie różnicowa kopia zapasowa jest taka sama, jak tworzenie pełna kopia zapasowa, z wyjątkiem tylko zmienione dane są kopiowane.kopia zapasowa plik bazy danych polega po prostu kopiowania danych z pliku kopia zapasowa urządzenia.

Pliki bazy danych, używane do przechowywania w bazie danych są sortowane według urządzenia dyskowego, a wątek czytnik jest przypisany do każdego urządzenia.Wątek czytnika odczytuje dane z plików bazy danych.Wątek moduł zapisujący jest przypisany do każdego urządzenie kopia zapasowa.Wątek modułu zapisującego zapisuje dane do urządzenie kopia zapasowa.Równoległych operacji odczytu może być zwiększana o rozprzestrzeniania się wśród dyski logiczne więcej pliki bazy danych.Podobnie, wykonywanie operacji zapisu równoległy może być zwiększana przy użyciu więcej kopia zapasowa urządzenia.

Ogólnie rzecz biorąc wąskie gardło będą pliki bazy danych lub urządzenia kopia zapasowa.Jeśli ogólnej przepustowości odczytu jest większa niż przepustowość całkowita urządzenie kopia zapasowa, następnie wąskie gardło znajduje się na stronie urządzenie kopia zapasowa.Dodawanie więcej urządzeń kopii zapasowych (i kontrolerów SCSI, w razie potrzeby) może zwiększyć wydajność.Jednak jeśli ogólnej przepustowości kopia zapasowa jest większa niż całkowita odczytać przepustowość, następnie zwiększyć wydajność odczytu; na przykład przez dodanie więcej plików bazy danych lub urządzenia (lub przez dodanie większej liczby dysków do urządzenia RAID).

Optymalizowanie wydajności kopia zapasowa dziennik transakcji

Tworzenie kopia zapasowa dziennik transakcji polega po prostu kopiowanie część dziennika nie zostały jeszcze kopie zapasowe urządzeń kopii zapasowych.Mimo, że może istnieć wiele plików dziennik transakcji, dziennik transakcji jest logicznie jeden strumień odczytu sekwencyjnie przez jeden wątek.

Wątek moduł zapisujący jest przypisany do każdego urządzenie kopia zapasowa.Uzyskuje się większą wydajność, dodając więcej urządzeń kopia zapasowa.

Wąskie gardło może być dysk zawierający pliki dziennik transakcji lub urządzenie kopia zapasowa, w zależności od ich szybkości względne i liczbę kopia zapasowa do urządzeń używanych.Dodawanie więcej urządzeń kopia zapasowa będzie skalowane liniowo aż do osiągnięcia wydajności dysk zawierający pliki dziennik transakcji po upływie którego dalsze zyski są możliwe bez zwiększania szybkości urządzeń dyskowych, zawierające rozkładanie, na przykład przy użyciu dziennik transakcji.

Optymalizowanie wydajności przywracanie

Przywracanie bazy danych lub różnicowa kopia zapasowa składa się z czterech kroków:

  1. Tworzenie bazy danych i dziennik transakcji pliki, które już istnieją.

  2. Kopiowanie danych z urządzenia kopia zapasowa plików bazy danych.

  3. Kopiowanie dziennik transakcji z plików dziennik transakcji.

  4. Stopniowe do przodu dziennik transakcji, a następnie ponowne uruchomienie odzyskiwanie, jeśli to konieczne.

Stosowanie kopia zapasowa dziennik transakcji składa się z dwóch kroków:

  1. Kopiowanie danych z urządzenia kopia zapasowa do pliku dziennik transakcji.

  2. Stopniowe do przodu dziennik transakcji.

Przywracanie plik bazy danych składa się z dwóch kroków:

  1. Tworzenie wszystkie brakujące pliki bazy danych.

  2. Kopiowanie danych z urządzenia kopia zapasowa plików bazy danych.

Inicjowanie pliku

Jeśli w bazie danych i dziennik transakcji pliki nie istnieją już, że należy utworzyć przed dane mogą być przywracane do nich.W bazie danych i dziennik transakcji pliki są tworzone i zawartość pliku jest ustawiana na zero.Oddzielnych wątków umożliwia tworzenie i Inicjowanie plików równolegle.Pliki dziennika bazy danych i transakcji są sortowane według urządzenia dyskowego, a wątek roboczy oddzielne jest przypisany do każdego urządzenia dysku.Tworzenie i Inicjowanie plików wymaga bardzo dużą wydajność, rozmieszczanie plików równomiernie między dostępne dyski logiczne daje największą wydajność.

Inicjowanie pliku błyskawiczne

W SQL Server 2005 i nowszych wersji, dane plików, które mogą być inicjowane natychmiast, co pozwala na szybkie wykonywanie operacji przywracanie bazy danych lub grupa plików. Inicjowanie pliku błyskawiczne reclaims zajętego miejsca na dysku bez wypełnienia to miejsce zerami.Zamiast tego zawartość dysku jest zastępowane przez nowe dane są zapisywane w plikach.Inicjowanie pliku dziennika nadal wymaga wyzerowanie, ale stanie się równolegle z przesyłanie danych z kopia zapasowa.Krok przenieść na przyszły okres przywracanie nie zostanie uruchomiona, dopóki wszystkie dane przesyłane i całych dziennika została zainicjowana.

Uwaga

Inicjowanie pliku błyskawiczne jest dostępna tylko na Microsoft System Windows XP Windows Server 2003, lub nowszych systemach.

Umożliwia błyskawiczne pliku inicjującego, uruchom konto usługa MSSQLSERVER przy użyciu konta systemu Windows i przypisywać uprawnienia specjalne SE_MANAGE_VOLUME_NAME systemu Windows do danego konta systemu Windows.Domyślnie przywilej ten jest przypisany do grupy administratorów systemu Windows.Jeśli użytkownik ma uprawnienia administrator systemu, dodając konto systemu Windows w taki sposób, aby można przypisać ten przywilej Wykonuje zadania konserwacji woluminów zasad zabezpieczeń.Aby uzyskać więcej informacji na temat przypisywania praw użytkownika Zobacz w dokumentacji systemu Windows.

Optymalizacja kopia zapasowa na taśmie urządzeń wydajności

Wiele zmiennych wpływać na wydajność urządzenie kopia zapasowa taśmę i umożliwić SQL Server dodaje się mniej więcej fizycznemu skalowane liniowo jako więcej urządzeń taśmowych kopii zapasowych i przywracanie operacji wydajności:

  • Rozmiar blok danych oprogramowania.

  • Liczba urządzeń taśmowych, które współużytkują magistrali small computer system interfejs (SCSI).

  • Taśma typ urządzenia.

Rozmiar blok danych oprogramowania jest obliczana w celu uzyskania optymalnej wydajności przez SQL Server i nie powinny być zmienione. Maksymalny rozmiar bloku jest 64 KB.

Wiele stacji taśm o dużej szybkości działać lepiej przy mają dedykowane magistrali SCSI dla każdej stacji taśm używanych.Dyski, którego szybkość transmisji macierzystym przekracza 50 procent szybkość magistrali SCSI musi znajdować się na dedykowanym magistrali SCSI, aby uniknąć utraty wydajności.Aby uzyskać więcej informacji o ustawieniach, które wpływają na wydajność stacji taśm zapoznaj się z dokumentacją dostarczaną przez producenta stacji taśmy.

Important noteImportant Note:

Nigdy nie należy umieszczać stacji taśm na tej samej magistrali SCSI, jak dyskietki lub dysku CD-ROM.Akcje obsługi błędów dla tych urządzeń są wzajemnie niezgodne.

Podczas wykonywania wielu kopia zapasowa operacji na taśmie załadowany, określając NOREWIND można poprawić wydajność.Ta opcja powoduje, że SQL Server Aby zachować taśmy lub taśm Otwórz po operacji tworzenia kopia zapasowa. NOREWIND oznacza NOUNLOAD.

Optymalizowanie wydajności urządzenie kopia zapasowa dysku

Nieprzetworzony szybkość We/Wy urządzenie kopia zapasowa dysku ma wpływ na wydajność urządzenie kopia zapasowa dysków i umożliwia SQL Server Tworzenie kopii zapasowych i przywracanie wydajnością operacji do około skalowane liniowo w kilka urządzeń dyskowych zostaną dodane.

Korzystanie z RAID dla urządzenie kopia zapasowa dysku musi należy starannie rozważyć.Na przykład RAID 5 ma wydajność zapisu niski, około taką samą szybkość, jak w przypadku jednego dysku (ze względu na potrzeby do przechowywania informacji o parzystości).Ponadto raw prędkość dołączania danych do pliku jest znacznie mniejsza niż szybkość zapisu nieprzetworzonych urządzenia.

Jeśli urządzenie kopia zapasowa jest silnie rozłożonych, taki sposób, że szybkość maksymalna zapisu do urządzenia do składowania kopii zapasowych znacznie przekracza szybkości, w którym go można dołączyć danych do pliku, następnie może być odpowiednie do tego samego zestaw pasek kilka urządzeń kopia zapasowa logicznych.Innymi słowy wykonania kopia zapasowa może być zwiększana przez umieszczenie kilku rodzin nośników kopii zapasowych na tym samym dysku logicznego.Jednak empiryczne podejście jest wymagany do ustalenia, czy jest to zysk lub strata dla poszczególnych środowisk.Zazwyczaj lepiej jest umieścić każde urządzenie kopia zapasowa na urządzeniu innym dysku.

Ogólnie rzecz biorąc magistrali SCSI tylko kilka dysków może działa przy maksymalnej szybkości, mimo że Ultra-wide i Ultra-2 magistrali może obsługiwać więcej.Może być potrzebne w celu uzyskania optymalnej wydajności jest jednak zachować ostrożność konfiguracja sprzętu.

Aby uzyskać więcej informacji na temat ustawień, które wpływają na wydajność dysku zapoznaj się z dokumentacją dostarczaną przez producenta dysku.

Kompresja danych

Nowoczesne wyposażonych w stacje taśm mają wbudowane sprzętowej kompresji danych, która może znacznie zwiększyć szybkość skuteczne transferu danych na dysku.Zarówno na dane, jak i na stacji taśm, używane, zależy od compressibility rzeczywistych danych w bazie danych.Typowe kompresji współczynniki zakres danych z 1.2:1 2: 1 dla wielu typów baz danych.To stopień kompresji jest typowe dla danych w różnych aplikacji biznesowych, chociaż niektóre bazy danych może mieć stosunek kompresji wyżej lub niżej.Na przykład, składających się głównie z obrazów, które są już skompresowane bazy danych nie będą kompresowane zaplanować w stacje taśm.Aby uzyskać więcej informacji na temat kompresji danych zapoznaj się z dokumentacją dostarczaną przez producenta stacji taśm.

Domyślnie SQL Server obsługuje kompresję sprzętową, mimo że tej procedury można wyłączyć za pomocą flagi śledzenia 3205. Wyłączenie kompresji sprzętowej w rzadkich przypadkach poprawić kopia zapasowa wydajności.Na przykład jeśli dane już pełni jest skompresowany, wyłączenie kompresji sprzętowej uniemożliwia urządzenia taśmowego marnowania czas próby skompresowania dalszych danych.

Aby uzyskać więcej informacji na temat śledzenia flag zobacz Flagi śledzenia (Transact-SQL).

Kompresja kopia zapasowa

Domyślnie, kopia zapasowa przy użyciu Kompresja kopia zapasowa znacznie zwiększa obciążenia PROCESORA, a dodatkowe PROCESORA przez proces kompresji może pogorszyć równoczesne wykonywanie operacji.W związku z tym zachodzi potrzeba utworzenia kopia zapasowa w sesja, których użycie PROCESORA jest ograniczona przez skompresowane priorytetem niskim Governor zasób , gdy wystąpi Rywalizacja o PROCESOR.Aby uzyskać więcej informacji zobaczHow to: Use Resource Governor to Limit CPU Usage by Backup Compression (Transact-SQL).

Ilość danych, przesunięty do taśm

Tworzenie danych lub różnicowa kopia zapasowa przechwytuje tylko części bazy danych zawierającej dane rzeczywiste; nieużywane miejsce nie jest wykonywana kopia zapasowa.Wynik jest szybsze kopia zapasowa operacji.

Mimo że SQL Server bazy danych można skonfigurować w taki sposób, aby powiększyć automatycznie jako wymagane, można kontynuować zarezerwowanego miejsca w bazie danych, aby zagwarantować, że ma to miejsce. Rezerwowanie miejsca w bazie danych nie wpływa niekorzystnie na wydajność wykonywania tworzyć kopię zapasową zapasowych lub całkowity czas potrzebny do wykonania tworzyć kopię zapasową zapasowej bazy danych.

Optymalizacja Dziennik synchronizacji dostawy

Podczas próby zsynchronizowania docelowego wysyłanie dziennika, nie trzeba używać WITH STANDBY między krokami przywracanie dziennik.