| Termin | Definicja |
|---|---|
| odmontowanie bazy danych | Odmontowanie bazy danych to odłączenie jej plików od instancji z zachowaniem ich na dysku do późniejszego podłączenia. Na czym polega odmontowanie bazy danychOdmontowanie bazy danych oznacza logiczne odłączenie jej plików od działającej instancji systemu zarządzania bazą danych. Pliki pozostają zapisane na nośniku, ale instancja przestaje traktować je jako aktualnie dołączoną bazę. W rezultacie użytkownicy i aplikacje nie mogą wykonywać zapytań, odczytywać rekordów ani zapisywać nowych danych w odmontowanej bazie. Sama operacja nie jest równoznaczna z usunięciem bazy, skasowaniem jej plików ani wyczyszczeniem zawartości. Po odmontowaniu pliki mogą zostać później ponownie podłączone do tej samej instancji albo, jeżeli pozwala na to konkretny silnik, do innej zgodnej instancji. Przy ponownym podłączaniu system sprawdza między innymi dostępność plików, ich strukturę oraz możliwość odtworzenia spójnego stanu. Odmontowanie dotyczy więc powiązania między instancją a plikami bazy, a nie fizycznego istnienia danych na dysku. Warunki bezpiecznego odłączenia plikówPrzed odmontowaniem trzeba doprowadzić bazę do stanu, w którym nie są wykonywane operacje zależne od jej aktywnego połączenia z instancją. W praktyce oznacza to zakończenie albo przeniesienie sesji użytkowników, zatrzymanie procesów korzystających z bazy i sprawdzenie, czy nie trwa transakcja, operacja konserwacyjna, odtwarzanie kopii lub zapis do dziennika transakcji. Jeżeli aplikacja nadal próbuje korzystać z odłączanej bazy, może otrzymać błąd połączenia, a sama operacja może zostać odrzucona albo wymagać wymuszonego trybu odłączenia. Istotne jest rozróżnienie pomiędzy zamknięciem poprawnym a wymuszonym. Poprawne odmontowanie pozwala silnikowi zakończyć bieżące operacje, zapisać wymagane informacje pomocnicze i zamknąć pliki w przewidywalny sposób. Wymuszenie odłączenia może przerwać sesje lub pozostawić konieczność wykonania procedury odzyskiwania przy kolejnym podłączeniu. Dokładne zachowanie zależy od użytego silnika, dlatego nie należy bezpośrednio przenosić poleceń i zasad znanych z jednego systemu bazodanowego do innego. Pliki, ścieżki i ponowne podłączenieOdmontowana baza zwykle składa się z jednego lub kilku plików danych oraz plików dziennika, lecz ich nazwy, rozszerzenia, lokalizacja i wzajemne zależności są ustalane przez konkretny silnik. Samo posiadanie plików na dysku nie gwarantuje, że baza będzie mogła zostać ponownie podłączona. System musi mieć dostęp do właściwej ścieżki, odpowiednie uprawnienia do odczytu i zapisu oraz zgodność plików z obsługiwaną wersją oprogramowania. Przeniesienie pojedynczego pliku bez pozostałych elementów może uniemożliwić otwarcie bazy albo spowodować jej uruchomienie w stanie wymagającym odzyskiwania. Przed odłączeniem warto zapisać rzeczywistą lokalizację wszystkich plików, sprawdzić ich obecność i potwierdzić, że na docelowym nośniku jest wystarczająca ilość miejsca. Po ponownym podłączeniu należy zweryfikować stan bazy, dostępność obiektów, możliwość wykonania odczytu oraz działanie aplikacji korzystających z połączenia. Weryfikacja nie powinna ograniczać się do sprawdzenia, czy baza pojawiła się na liście. Konieczne jest także przeanalizowanie komunikatów silnika, ponieważ poprawne rozpoznanie plików nie zawsze oznacza pełną spójność danych. Odmontowanie a diagnostyka problemów z baząOdmontowanie może być elementem procedury diagnostycznej, gdy trzeba odseparować bazę od instancji, przygotować pliki do przeniesienia albo sprawdzić, czy problem wynika z konfiguracji aktywnego środowiska. Nie jest jednak metodą naprawy uszkodzonych danych. Jeżeli przed odłączeniem występowały błędy odczytu, uszkodzenia stron danych, problemy z dziennikiem albo niespójności metadanych, samo odmontowanie nie usunie przyczyny. Przeciwnie, nieprawidłowe przerwanie pracy może utrudnić późniejsze odzyskiwanie. Podczas analizy należy odnotować czas operacji, nazwę instancji, nazwę bazy, lokalizacje plików, aktywne sesje oraz komunikaty zapisane przez system. Trzeba również odróżnić odmontowanie od usunięcia bazy, odłączenia dysku i zatrzymania całej instancji. Są to różne działania o odmiennych skutkach. W środowisku, w którym baza obsługuje aplikację, każda zmiana powinna być poprzedzona kopią zapasową wykonaną zgodnie z możliwościami danego silnika oraz planem przywrócenia działania. Dopiero po potwierdzeniu spójności i dostępności plików można uznać procedurę za zakończoną. |