| Termin | Definicja |
|---|---|
| Odzyskiwanie danych z pliku strumieniowego (FILESTREAM) | ![]() Odzyskiwanie danych FILESTREAM wymaga przywrócenia zarówno bazy, jak i katalogu z powiązanymi plikami. Jak działa FILESTREAM w SQL ServerFILESTREAM jest funkcją Microsoft SQL Server przeznaczoną do przechowywania dużych danych binarnych, takich jak dokumenty, obrazy, nagrania lub archiwa, poza klasycznymi stronami danych bazy, przy zachowaniu powiązania z rekordami tabeli. W tabeli znajduje się kolumna typu Odzyskiwanie danych nie polega więc na skopiowaniu pojedynczego pliku z katalogu systemu Windows. Kontener FILESTREAM jest zarządzany przez SQL Server i nie powinien być modyfikowany, przenoszony ani uzupełniany ręcznie. Zawartość musi pozostać zgodna ze stanem tabel, metadanymi bazy i dziennikiem transakcji. Samodzielne kopiowanie plików z kontenera może doprowadzić do niespójności, której zwykłe podłączenie katalogu do innej instancji nie naprawi. Co obejmuje kopia zapasowaPrawidłowo wykonana kopia zapasowa bazy SQL Server obejmuje także pliki należące do grupy plików FILESTREAM. Przy odtwarzaniu potrzebny jest zatem backup bazy oraz, jeżeli celem jest odzyskanie najnowszego możliwego stanu, odpowiedni łańcuch kopii dziennika transakcji. Kopia pełna ustanawia punkt bazowy, a kolejne backupy logu pozwalają odtworzyć zatwierdzone zmiany wykonane po tym punkcie. W przypadku kopii różnicowej można ją zastosować jako etap pośredni, o ile jest związana z właściwą kopią pełną. Przed rozpoczęciem operacji należy ustalić, czy uszkodzeniu uległa sama baza, pliki danych, dziennik, wolumin zawierający kontener FILESTREAM, czy tylko system operacyjny. Istotne są również informacje o wersji SQL Server, nazwie bazy, lokalizacji plików oraz dostępnych zestawach backupów. Kopia bazy bez zawartości FILESTREAM, niekompletny zestaw plików albo backup wykonany po utracie części kontenera nie zapewni pełnego odzyskania. Weryfikacja kopii przez SQL Server, między innymi poleceniem Jeżeli organizacja używa backupu częściowego lub kopii poszczególnych grup plików, trzeba sprawdzić, czy obejmuje ona grupę FILESTREAM. Odtwarzanie wybranej grupy plików jest procedurą zależną od stanu całej bazy i wymaga zachowania zgodności z dziennikiem transakcji. Nie należy zakładać, że backup standardowych plików MDF i NDF wystarczy do odtworzenia obiektów przechowywanych przez FILESTREAM. Przebieg odtwarzania i kontrola spójnościOdtwarzanie wykonuje się w SQL Server za pomocą instrukcji Ostatni etap łańcucha backupów odtwarza się z opcją Po odtworzeniu można wykonać kontrolę strukturalną za pomocą Diagnostyka problemów po odzyskaniuTypowym objawem niepełnego odtworzenia jest obecność rekordów w tabeli przy jednoczesnym błędzie podczas pobierania zawartości FILESTREAM. Taka sytuacja może oznaczać brak właściwego kontenera, niezgodne ścieżki plików, uszkodzenie woluminu albo odtworzenie bazy z backupu, który nie obejmował aktualnego stanu danych FILESTREAM. Inny przypadek to brak rekordów połączony z poprawnie działającym odczytem starszych plików; wtedy problem może dotyczyć punktu odtworzenia, pominiętej kopii dziennika albo transakcji, która nie została jeszcze odtworzona. Diagnostyka powinna opierać się na komunikatach SQL Server, historii operacji backupu i restore, stanie plików bazy oraz logach aplikacji. Nie należy naprawiać sytuacji przez ręczne zmiany nazw plików w kontenerze ani przez kopiowanie pojedynczych elementów między katalogami. Jeżeli backupy są dostępne, bezpiecznym sposobem potwierdzenia procedury jest odtworzenie kopii na odseparowanej instancji testowej, sprawdzenie tabel FILESTREAM i dopiero później zaplanowanie odtworzenia środowiska docelowego. Po zakończeniu prac warto ustalić przyczynę awarii, czas utraty danych oraz punkt, do którego udało się odtworzyć bazę. Należy również sprawdzić, czy wykonano nową kopię zapasową już po odzyskaniu i czy procedura regularnie obejmuje grupę plików FILESTREAM oraz dziennik transakcji. W środowisku, w którym pliki binarne mają znaczenie operacyjne, test odtwarzania powinien być powtarzany, ponieważ sama obecność pliku backupu nie dowodzi, że pełna ścieżka odzyskiwania zadziała w praktyce. |