Dlaczego musimy tworzyć kopie zapasowe dzienników archiwum Oracle wraz z plikami danych

12

Mówi o tym kopia zapasowa i odzyskiwanie bazy danych Oracle® 10g Release 2 (10.2)

Zarchiwizowane dzienniki ponawiania są kluczem do pomyślnego odzyskiwania nośnika. Twórz kopie zapasowe regularnie.

Zastanawiam się jednak, dlaczego tworzenie kopii zapasowych dzienników archiwalnych jest tak ważne. Czy możliwe byłoby odzyskanie punktu w czasie tylko przy użyciu regularnych pełnych kopii zapasowych i przyrostowych plików danych RMAN.

nonezumi
źródło

Odpowiedzi:

16

Nie, nadal potrzebujesz zarchiwizowanych dzienników ponawiania. Kopia zapasowa RMAN to nie to samo, co zimna kopia zapasowa; po przywróceniu należy zastosować wszystkie powtórzenia wygenerowane od momentu rozpoczęcia tworzenia kopii zapasowej do czasu jej zakończenia, aby zapewnić spójność SCN we wszystkich plikach danych i pliku kontrolnym.

Rozważmy staromodną hot backup. W tym trybie całe zmienione bloki bazy danych są zapisywane w strumieniu dziennika ponawiania, a plik jest kopiowany do systemu operacyjnego. Powoduje to pękanie bloków , tzn. Blok zmienił się podczas odczytu przez kopię zapasową. Aby odzyskać bazę danych, przywracamy pliki DBF, a następnie proces odzyskiwania nakłada zmienione bloki z zarchiwizowanych dzienników ponownych na uszkodzone bloki w pliku i wracamy do spójnej bazy danych.

W kopii zapasowej RMAN problem złamanych bloków został wyeliminowany, ponieważ bloki są odczytywane przez Oracle za pośrednictwem SGA, a nie przez narzędzie uniksowe takie jak cp. Jednak DBF zmienia się między czasem odczytu pierwszego bloku a ostatnim blokiem, więc jest to ten sam problem, tylko na większą skalę. To znaczy, SCN zmienia się między pierwszym a ostatnim blokiem w kopii zapasowej. Zarchiwizowane dzienniki ponawiania również to obejmują.

RMAN daje możliwość zarządzania katalogiem i umożliwia tworzenie gorących kopii zapasowych bez konieczności generowania powtórzeń z dużo większą szybkością (co kładzie nacisk na dyski, system tworzenia kopii zapasowych itp.). Jednak BACKUP DATABASEbędzie nie daje spójną bazę danych samo w sobie; jedyny sposób, aby to zrobić w Oracle jest zimny backup.

Gajusz
źródło
1
+1 Bardziej podoba mi się twoja odpowiedź, pomyślałem, że dodam moją, by uzyskać dodatkowe informacje.
Leigh Riffel
7

Tworzenie kopii zapasowej dzienników archiwów jest konieczne tylko podczas działania w trybie dzienników archiwów, dlatego pojawia się pytanie, czy baza danych powinna to robić, czy nie. Jest to omówione w tym samym dokumencie, do którego się odwołujesz, pod nagłówkiem Decydowanie między trybem ARCHIWALOGU i NOARCHIVELOG . Oto fragment:

Decydowanie między trybem ARCHIVELOG a NOARCHIVELOG

Dzienniki ponawiania bazy danych zapewniają pełny zapis zmian w plikach danych bazy danych (z kilkoma wyjątkami, takimi jak bezpośrednie ładowanie ścieżki).

Możesz uruchomić bazę danych w jednym z dwóch trybów: tryb ARCHIWALOGOWY lub tryb NOARCHIVELOG. W trybie ARCHIVELOG używana grupa dzienników ponownych operacji online musi zostać skopiowana do co najmniej jednego miejsca docelowego archiwum, zanim będzie można jej ponownie użyć. Archiwizowanie dziennika powtórzeń zachowuje wszystkie transakcje przechowywane w tym dzienniku, dzięki czemu można je później wykorzystać w operacjach odzyskiwania. W trybie NOARCHIVELOG grupy dzienników ponawiania online są po prostu nadpisywane, gdy dziennik jest ponownie wykorzystywany. Wszystkie informacje o transakcjach zarejestrowanych w tej grupie dzienników powtórzeń są tracone.

2.3.3.1 Implikacje działania w trybie NOARCHIVELOG

Uruchomienie bazy danych w trybie NOARCHIVELOG nakłada poważne ograniczenia na strategię tworzenia kopii zapasowych i odzyskiwania.

  • Nie można wykonywać kopii zapasowych online bazy danych. Musisz dokładnie zamknąć bazę danych, zanim będziesz mógł wykonać kopię zapasową w trybie NOARCHIVELOG.

  • Nie można używać żadnych technik odzyskiwania danych, które wymagają zarchiwizowanych dzienników przywracania. Obejmują one pełne i natychmiastowe odzyskiwanie nośników, zgodnie z opisem w „Formach odzyskiwania danych” oraz bardziej zaawansowane techniki odzyskiwania, takie jak odzyskiwanie w określonym momencie poszczególnych obszarów tabel i Baza danych Flashback (opisane w Oracle Database Backup and Recovery Advanced Poradnik użytkownika.).

Jeśli pracujesz w trybie NOARCHIVELOG i musisz odzyskać dane po uszkodzeniu plików danych z powodu awarii dysku, masz dwie główne opcje odzyskiwania:

  • Upuść wszystkie obiekty, które mają dowolne rozmiary znajdujące się w plikach, których dotyczy problem, a następnie upuść pliki. Pozostała część bazy danych jest nienaruszona, ale wszystkie dane w plikach podlegających usterce zostaną utracone.

  • Przywróć całą bazę danych z najnowszej kopii zapasowej i utrac wszystkie zmiany w bazie danych od momentu utworzenia kopii zapasowej. (Odzyskiwanie zmian, ponieważ tworzenie kopii zapasowej wymagałoby przeprowadzenia odzyskiwania nośnika, który korzysta ze zarchiwizowanych dzienników przywracania).

...

Gdy wymagania dotyczące wydajności są ekstremalne lub ograniczenia miejsca na dysku są poważne, może być lepiej uruchomić w trybie NOARCHIVELOG, pomimo ograniczeń, które ten wybór nakłada na opcje odzyskiwania.

Prawie zawsze będziesz chciał uruchomić tryb ARCHIVELOG, dlatego prawie zawsze chcesz wykonać kopię zapasową dzienników archiwum.

Leigh Riffel
źródło
Zawsze powinieneś chcieć działać w trybie ARCHIWALOGU, albo kiedyś będziesz tego żałować; nawet w bazach danych programowania / testowania.
Mark Stewart