RMAN

Z Wikipedii, wolnej encyklopedii

Menedżer odtwarzania (ang. Recovery Manager, w skrócie RMAN) – program narzędziowy bazy danych Oracle, który wykonuje zadania backupu i odtwarzania bazy danych oraz służy do zautomatyzowania strategii wykonywania kopii zapasowych[1][2]. Dostarczany jest wraz z RDBMS Oracle przez firmę Oracle Corporation.

Rozwiązania Oracle w obszarze backupu i odtwarzania[edytuj | edytuj kod]

Użytkownik – najczęściej Administrator Bazy Danych – kiedy implementuje strategie backupu i odtwarzania, ma do dyspozycji następujące możliwości[3]:

  • Ręczne (ang. User-managed) wykonywanie zabezpieczenia i przywracania bazy danych poprzez mieszaninę komend systemu operacyjnego oraz komend SQL. W takim przypadku użytkownik jest w pełni odpowiedzialny za wszystkie aspekty tego jak i kiedy zabezpieczanie oraz odtwarzanie ma zostać wykonane.
  • Użycie menadżera RMAN, który jest w pełni zintegrowany z bazą danych Oracle i obejmuje swoim zakresem pełny zakres wszystkich czynności niezbędnych do wykonania backupu lub odtwarzania.

Oba rozwiązania są wspierane i w pełni udokumentowane przez Oracle, jednak RMAN jest metodą zalecaną[3]. Zapewnia wspólny interfejs do wykonywania poleceń w różnych systemach operacyjnych oraz oferuje techniki niedostępne w przypadku ręcznym. Najbardziej znaczące różnice to:

  • Backup przyrostowy (ang. Incremental backups) – przechowuje tylko bloki zmienione od czasu wykonania ostatniego backupu, co redukuje mniejszy rozmiar backupu oraz jego szybsze wykonanie.
  • Odtwarzanie pojedynczych bloków danych (ang. Block media recovery) – RMAN pozwala na odtwarzanie pojedynczych bloków danych bez konieczności odtwarzania całych plików danych.
  • Kompresja backupu (ang. Binary compression) – wbudowany mechanizm kompresji, zmniejszający wynikowy plik backupu.
  • Szyfrowanie backupu (ang. Encrypted backups) – zdolność szyfrowania backupu różnymi algorytmami szyfrującymi.
  • Zautomatyzowana duplikacja bazy danych (ang. Automated database duplication) – możliwość wykonania kopii bazy danych z wykonanego backupu.
  • Konwersja danych między platformami (ang. Cross-platform data conversion).

Pełna tabela różnic[3]:

Funkcja RMAN User-Managed Data Pump Export
Zimne kopie zapasowe Tak Tak Nie
Gorące kopie zapasowe Tak Tak Tak
Kopie przyrostowe Tak Nie Nie
Wykrywanie uszkodzonych bloków Tak Nie Tak
Automatyczne wyszczególnienie plików do backupu Tak Nie 1 Nie dotyczy
Repozytorium kopii zapasowych Tak 2 Nie 3 Nie
Backup na nośnikach zewnętrznych (np. taśmy) Tak Tak Nie
Backup pliku inicjalizacyjnego (startowego) Tak Tak Nie
Backup pliku haseł oraz plików konfiguracyjnych sieci Nie Tak Nie
Niezależność od wersji językowej platformy Tak Nie Tak

1: Pliki, które mają być objęte backupem muszą być ręcznie zlokalizowane i skopiowane.
2: Informacje o wykonanych kopiach zapasowych są automatycznie przechowywane są w pliku kontrolnym bazy danych lub dodatkowo w katalogu odtwarzania.
3: Administrator baz danych musi ręcznie utrzymywać informacje o wykonanych kopiach zapasowych we własnym zakresie.

Menedżer RMAN[edytuj | edytuj kod]

RMAN to specyficzna implementacja architektury SMR (ang. Server-Managed Recovery – odtwarzanie zarządzane przez serwer) dostępna dla systemu Oracle. Menedżer odtwarzania to samodzielna aplikacja, która nawiązuje połączenie klienckie z bazą danych w celu uzyskania dostępu do wewnętrznych pakietów archiwizacji i odtwarzania. Archiwizacja bazuje na wbudowanym kodzie wchodzącym w skład jądra systemu zarządzania bazą danych Oracle. Wiele szczegółów zarządzania kopią zapasową obsługuje sam system bazy danych[4].

Narzędzie RMAN spełnia jednoznacznie wyznaczoną i przewidywalną funkcję: interpretuje wprowadzane przez użytkownika polecenia i przekształca je na wywołania języka PL/SQL, które wykonywane są na docelowej bazie danych. W ogólności, polecenia stanowią zestaw działań, które menedżer RMAN musi wykonać w celu utworzenia kopii zapasowej, odtworzenia lub przywrócenia bazy danych oraz zarządzania już utworzonymi kopiami zapasowymi[4]. Pełna lista komend wraz z wymaganą konstrukcją składniową dla danej wersji systemu Oracle znajduje się w dokumentacji technicznej.

RMAN jako aplikacja[edytuj | edytuj kod]

Menedżer RMAN jest samodzielną aplikacją, klientem bazy danych Oracle działającym w wierszu poleceń, składającym się z:

  • Pliku wykonywalnego:
    • W systemach Windows: %ORACLE_HOME%\bin\rman.exe
    • W systemach Unix/Linux: $ORACLE_HOME/bin/rman
  • Biblioteki $ORACLE_HOME/rdbms/admin/recover.bsq

Gdzie:

  • Zmienna środowiskowa ORACLE_HOME wskazuje na katalog, w którym zainstalowano oprogramowanie bazy danych[5].
  • Katalog bin gromadzi binaria[5]
  • Katalog rdbms gromadzi pliki serwera oraz biblioteki niezbędne dla oprogramowania bazy danych[5]

Zadaniami RMAN można również zarządzać za pośrednictwem interfejsu webowej aplikacji Oracle Enterprise Manager (OEM).

Środowisko menedżera RMAN[edytuj | edytuj kod]

Środowisko menedżera RMAN składa się z minimum dwóch elementów[1]:

  • Klienta RMAN, który:
    • Interpretuje wydawane lub zapisane polecenia.
    • Tworzy sesje połączeń do serwera bazy danych w celu wykonania tych poleceń.
    • Zapisuje ich wykonanie w pliku kontrolnym bazy danych.
  • Docelowej bazy danych (ang. target database) – baza do której podłącza się klient RMAN oraz na której wykonywane są operacje backupu lub odtwarzania.

Uruchamianie klienta RMAN[edytuj | edytuj kod]

Klient RMAN uruchamiany jest poleceniem rman w powłoce systemu operacyjnego, o ile użytkownik wcześniej prawidłowo ustawił zmienną środowiskową PATH (po instalacji bazy danych Oracle jej wartość przyjmuje najczęściej wartość PATH=$ORACLE_HOME/bin:$PATH). Użytkownicy systemu Linux powinni zwrócić szczególną uwagę, ponieważ rman może wskazywać na program PolyglotMan[6]. W każdym innym przypadku, klienta RMAN można również uruchomić podając pełną ścieżkę do programu wykonywalnego.

Po uruchomieniu klienta RMAN, użytkownik rozpoczyna interakcję z programem RMAN, który wyświetla swój znak zachęty, jak w poniższym przykładzie.

$ rman

Menedżer przywracania: Release 11.2.0.3.0 - Production on Śr Cze 20 14:22:59 2012

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

RMAN>

Backup bazy danych[edytuj | edytuj kod]

W celu wykonania zabezpieczenia bazy danych z użyciem menedżera RMAN, należy zadbać o prawidłowe wykonanie trzech, niezbędnych kroków[7]:

  1. Uruchomienie narzędzia RMAN.
  2. Podłączenie do docelowej bazy danych.
  3. Użycie wbudowanego polecenia BACKUP.

Poniższy przykład prezentuje jeden ze sposobów podłączenia narzędzia RMAN do bazy danych Oracle z wykorzystaniem uwierzytelniania klienta RMAN w systemie operacyjnym, a następnie wykonanie kopii bezpieczeństwa bazy danych. Za pomocą tego polecenia, zostanie wykonany pełny backup bazy danych, tj. wszystkie pliki należące do tej bazy danych, bieżący plik kontrolny (ang. control file) oraz plik parametrów bazy danych.

$ rman
RMAN> CONNECT TARGET /
RMAN> BACKUP DATABASE;

Raporty[edytuj | edytuj kod]

W celu wyświetlenia informacji o wykonanych kopiach zapasowych, należy skorzystać z wbudowanego polecenia LIST BACKUP. Wykonanie tego polecenia powoduje wyświetlenie szczegółowych informacji dotyczących wszystkich dotychczas wykonanych kopii zapasowych[4]. Przykładowy, częściowy wynik takiego polecenia przedstawiono poniżej.

RMAN> list backup;

Lista zestawów kopii zapasowych
===============================

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ -------------------
300     Full    509.78M    DISK        00:03:12     2012-06-19
        BP Key: 302   Status: AVAILABLE  Compressed: YES  Tag: TAG20120619T040001
        Piece Name: /disk2/PROD/backupset/2012_06_19/o1_mf_nnndf_20120619_9ef78pef_.bkp
  Lista plików danych w zestawie kopii zapasowych 200
  File LV Type Ckp SCN    Ckp Time            Name
  ---- -- ---- ---------- ------------------- ----
  1       Full 74589701   2012-06-19          /disk1/oradata/prod/system01.dbf
  2       Full 74589701   2012-06-19          /disk1/oradata/prod/sysaux01.dbf
  3       Full 74589701   2012-06-19          /disk1/oradata/prod/undotbs01.dbf
  28      Full 74589701   2012-06-19          /disk1/oradata/prod/sers01.dbf

BS Key  Type LV Size       Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
301     Full    4.10M      DISK        00:00:03     2012-06-19
        BP Key: 303   Status: AVAILABLE  Compressed: YES  Tag: TAG20120619T040001
        Piece Name: /disk2/PROD/backupset/2012_06_19/o1_mf_nnndf_20120619_8cx45oiu_.bkp
  Dołączono SPFILE: Czas modyfikacji: 2012-06-11 07:25:40
  SPFILE db_unique_name: PROD
  Control File Included: Ckp SCN: 74589855  Ckp time: 2012-06-19

Aby uzyskać mniej szczegółowe informacje, należy skorzystać z polecenia LIST BACKUP SUMMARY, które wyświetli informacje o backupach w formie konspektu.

RMAN> LIST BACKUP SUMMARY;

Lista kopii zapasowych
======================

Key     TY LV S Device Type Completion Time #Pieces #Copies Compressed Tag
------- -- -- - ----------- --------------- ------- ------- ---------- ---
300     B  F  A DISK        2012-06-19      1       1       YES         TAG20120619T040001
301     B  F  A DISK        2012-06-19      1       1       YES         TAG20120619T040001d


Bibliografia[edytuj | edytuj kod]

Przypisy[edytuj | edytuj kod]

  1. a b Getting Started with RMAN. W: Oracle Database Backup and Recovery User's Guide, 11g Release 2 (11.2). Oracle Corporation, Czerwiec 2011. [dostęp 2012-06-20]. (ang.).
  2. Glossary. W: Oracle Database Concepts, 11g Release 2 (11.2). Oracle, 2011/09. Cytat: Recovery Manager. An Oracle Database utility that backs up, restores, and recovers Oracle databases..
  3. a b c Introduction to Backup and Recovery. W: Oracle Database Backup and Recovery User's Guide, 11g Release 2 (11.2). Oracle Corporation, Czerwiec 2011. [dostęp 2012-06-20]. (ang.).
  4. a b c Hart M., Freeman R. G.: Oracle Database 10g RMAN. Archiwizacja i odzyskiwanie danych. Radosław Meryk (tłum.). Helion, 2008/09. ISBN 978-83-246-1203-1. (pol.).
  5. a b c Managing Oracle Homes. W: Oracle Universal Installer and OPatch User's Guide, 11g Release 2 (11.2) for Windows and UNIX. Oracle Corporation, Marzec 2011. [dostęp 2012-06-19]. (ang.).
  6. PolyglotMan Manual Page. [dostęp 2012-06-25]. (ang.).
  7. Darl Kuhn, Sam Alapati, Arup Nanda: RMAN Recipes for Oracle Database 11g: A Problem-Solution Approach. Apress, 2007/08/30. ISBN 978-1-59059-851-1. (ang.).

Linki zewnętrzne[edytuj | edytuj kod]