RMAN – Wikipedia, wolna encyklopedia
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
- W systemach Windows:
- 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]:
- Uruchomienie narzędzia RMAN.
- Podłączenie do docelowej bazy danych.
- 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]- Dokumentacja Oracle:
- Performing Backup and Recovery. W: Oracle Database 2 Day DBA 11g Release 2 (11.2). Oracle, 2012/02. E10897-09. [dostęp 2012-06-20]. (ang.).
- Oracle Database Concepts, 11g Release 2 (11.2). Oracle, 2011/09. E25789-01. [dostęp 2012-06-20]. (ang.).
- Oracle Database Backup and Recovery Reference, 11g Release 2 (11.2). Oracle, 2011/06. E10643-06. [dostęp 2012-06-20]. (ang.).
- Oracle Database Backup and Recovery User's Guide, 11g Release 2 (11.2). Oracle, 2011/06. E10642-05. [dostęp 2012-06-20]. (ang.).
- Configuring Backup and Recovery. W: Oracle Database High Availability Best Practices 11g Release 2 (11.2). Oracle, 2012/05. E10803-02. [dostęp 2012-06-20]. (ang.).
- Oracle Universal Installer and OPatch User's Guide, 11g Release 2 (11.2) for Windows and UNIX. Oracle, 2011/03. E12255-11. [dostęp 2012-06-19]. (ang.).
- Literatura:
- Hart M., Freeman R. G.: Oracle Database 10g RMAN. Archiwizacja i odzyskiwanie danych. Radosław Meryk (tłum.). Gliwice: Helion, 2008/09. ISBN 978-83-246-1203-1. (pol.).
- 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.).
Przypisy
[edytuj | edytuj kod]- ↑ 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.).
- ↑ 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..
- ↑ 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.).
- ↑ 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.).
- ↑ 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.).
- ↑ PolyglotMan Manual Page. [dostęp 2012-06-25]. (ang.).
- ↑ 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.).