Download as pdf or txt
Download as pdf or txt
You are on page 1of 21

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG

TWJ KOSZYK
DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Oracle RMAN.

Leksykon kieszonkowy
Autorzy: Darl Kubn, Scott Schulze
Tumaczenie: Bartomiej Garbacz
ISBN: 83-7197-673-9
Tytu oryginau: Oracle RMAN. Pocket Reference
Format: B6, stron: 152
Niniejsza ksika jest leksykonem kieszonkowym pakietu Recovery Manager (RMAN) -narzdzia sucego do przeprowadzania wszelkich czynnoci zwizanych
z archiwizowaniem i odzyskiwaniem danych w bazach danych Oracle. Nie stanowi ona
jednak wyczerpujcego kompendium wiedzy na temat archiwizowania i odzyskiwania
danych. Zawarto tu natomiast przegld architektury pakietu RMAN, w skrcie opisano
metody archiwizowania i odzyskiwania danych za pomoc tego pakietu, przedstawiono
zagadnienia zwizane z obsug katalogu odzyskiwania (recovery catalog), a take
zamieszczono diagramy skadniowe polece pakietu RMAN.
Zadaniem niniejszego Leksykonu jest umoliwienie szybkiego odnalezienia opisu skadni
i odpowiedniego przykadu zastosowania potrzebnego polecenia pakietu RMAN w celu
archiwizacji, odtworzenia lub odzyskania danych. Autorzy zaoyli, e Czytelnik jest
zaznajomiony z podstawami obsugi baz danych Oracle oraz z zagadnieniami zwizanymi
z tworzeniem kopii zapasowej i odzyskiwaniem danych. Wszystkie zamieszczone
w niniejszej ksice przykady skryptw trybu wsadowego zostay utworzone w jzyku
skryptowym systemu Unix. Wiele z tych przykadw zawiera cieki dostpu
odpowiadajce rodowisku pracy stosowanemu przez Autorw. Jeli Czytelnik bdzie
opracowywa wasne skrypty, musi je dostosowa do rodowiska pracy swojej aplikacji.
Piszc niniejsz ksik Autorzy starali si stosowa do prawa Pareto dlatego pooono
szczeglny nacisk na opisanie tych zagadnie, z ktrymi uytkownik najprawdopodobniej
zetknie si podczas wykorzystywania pakietu RMAN. Nie omwiono tu wszystkich
rodzajw rodowiska pracy ani wszystkich scenariuszy archiwizowania i odzyskiwania
danych, jakie stosowa moe administrator baz danych Oracle.

Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl

W niniejszej ksice opisano niektre z najczciej spotykanych scenariuszy, jednake


trzeba pamita, e spraw o fundamentalnym znaczeniu jest dogbne poznanie wasnej
implementacji pakietu RMAN. Jest to warunek zapewnienia sobie moliwoci odzyskania
kadej bazy danych, bez wzgldu na rodzaj ewentualnej awarii. Nie mona przeceni
wanoci regularnego testowania pakietu jako formy przygotowania do usuwania skutkw
nieprzewidywalnych awarii.
Dziki poprawnie skonfigurowanej implementacji pakietu oraz jego regularnemu testowaniu
administrator bazy danych zyskuje pewno, e niezalenie od okolicznoci zdoa on
opanowa sytuacj.

Wstp.......................................................................................... 7
Architektura pakietu RMAN .................................................... 10
Program wykonywalny RMAN.......................................... 11
Procesy serwera .................................................................. 12
Kanay................................................................................. 12
Docelowa baza danych ....................................................... 13
Baza danych katalogu odzyskiwania.................................. 13
Warstwa obsugi nonikw danych .................................... 16
Kopie zapasowe, zbiory kopii zapasowych
i elementy kopii zapasowych.............................................. 17
Uruchamianie pakietu RMAN.................................................. 18
Wymagania dotyczce docelowej bazy danych ................. 19
Wywoywanie programu wykonywalnego pakietu RMAN.. 23
czenie z docelow baz danych
bez wykorzystania bazy danych katalogu odzyskiwania ... 24
czenie z docelow baz danych
oraz baz danych katalogu odzyskiwania.............................. 27
Wykonywanie polece ............................................................. 29
Wykonywanie komend wywoywanych
z wiersza polece RMAN..................................................... 29
Wykonywanie komend pakietu RMAN
zapisanych w pliku ............................................................. 32
Wykonywanie polece jzyka SQL
i systemu operacyjnego z poziomu programu RMAN ....... 34
Uruchamianie programu RMAN
z poziomu skryptw systemowych..................................... 35

Wykorzystywanie katalogu odzyskiwania ............................... 39


Istota katalogu odzyskiwania.............................................. 39
Strategie tworzenia kopii zapasowej bazy katalogu ........... 43
Zagadnienia zwizane z katalogiem odzyskiwania ............ 46
Tworzenie katalogu ............................................................ 49
Rejestrowanie docelowej bazy danych............................... 52
Skrypty skadowane w katalogu............................................... 53
Przechowywanie skryptu .................................................... 53
Uruchamianie skryptu skadowanego................................. 54
Przegldanie skryptu skadowanego................................... 56
Usuwanie skryptu skadowanego ....................................... 57
Kopie zapasowe........................................................................ 58
Pena kopia zapasowa zamknitych plikw danych........... 58
Pena kopia zapasowa otwartych plikw danych ............... 60
Tworzenie kopii zapasowej przestrzeni tabel..................... 61
Tworzenie kopii zapasowej plikw danych........................ 61
Tworzenie kopii zapasowej plikw kontrolnych................ 62
Tworzenie kopii zapasowej archiwalnych plikw
dziennika powtrze ............................................................. 64
Przyrostowe kopie zapasowe.............................................. 66
Porady dotyczce tworzenia kopii zapasowych ................. 70
Odtwarzanie plikw ................................................................. 73
Odtwarzanie i odzyskiwanie wszystkich plikw danych ... 74
Odtwarzanie konkretnych przestrzeni tabel
lub plikw danych............................................................... 76
Odtwarzanie przestrzeni tabel zapisanych
w trybie tylko do odczytu ................................................... 77
Odtwarzanie do okrelonego momentu w czasie ............... 78
Odtwarzanie plikw kontrolnych ....................................... 79
Odtwarzanie archiwalnych plikw dziennika powtrze... 80

Lista polece pakietu RMAN................................................... 81


Powtarzajce si sowa kluczowe....................................... 81
Powtarzajce si wyraenia ................................................ 84
Skadnia polece wywoywanych z wiersza polece ......... 84
@......................................................................................... 87
@@ ..................................................................................... 87
ALLOCATE CHANNEL ................................................... 88
ALLOCATE CHANNEL FOR MAINTENANCE............ 90
ALTER DATABASE ......................................................... 90
BACKUP ............................................................................ 91
BLOCKRECOVER (dotyczy tylko Oracle9i).................... 97
CATALOG ......................................................................... 98
CHANGE.......................................................................... 100
CONFIGURE (dotyczy tylko Oracle9i) ........................... 102
CONNECT........................................................................ 105
COPY................................................................................ 106
CREATE CATALOG....................................................... 108
CREATE SCRIPT ............................................................ 109
CROSSCHECK ................................................................ 110
DELETE ........................................................................... 111
DELETE SCRIPT............................................................. 114
DROP CATALOG............................................................ 114
DUPLICATE .................................................................... 115
EXECUTE SCRIPT.......................................................... 117
EXIT ................................................................................. 117
HOST ................................................................................ 117
LIST .................................................................................. 118
listaObiektw .................................................................... 121
opcjeKonserwacji (dotyczy tylko Oracle9i) ..................... 121
opcjeZachowywania (dotyczy tylko Oracle9i)................. 122
operandPrzydziau ............................................................ 123
PRINT SCRIPT ................................................................ 125
przestKopieBezp (dotyczy tylko Oracle9i) ...................... 125

     
  


     
  


QUIT (dotyczy tylko Oracle9i) ........................................ 126


RECOVER........................................................................ 126
REGISTER ....................................................................... 128
RELEASE CHANNEL..................................................... 129
releasePoKonserwacji....................................................... 129
REPLACE SCRIPT .......................................................... 130
REPLICATE..................................................................... 132
REPORT ........................................................................... 132
RESET DATABASE........................................................ 135
RESTORE......................................................................... 135
RESYNC........................................................................... 138
RUN .................................................................................. 138
SEND ................................................................................ 139
SET ................................................................................... 139
SHOW (dotyczy tylko Oracle9i) ...................................... 141
SHUTDOWN ................................................................... 142
specArchDzienPowt ......................................................... 142
specCzasuUtworz ............................................................. 144
specacuchaPoczenia .................................................. 144
specObiektwKonserwacji (dotyczy tylko Oracle9i)....... 145
specPlikuDanych .............................................................. 146
specUrzdzenia ................................................................. 146
SPOOL (dotyczy tylko Oracle9i) ..................................... 147
SQL................................................................................... 147
STARTUP......................................................................... 148
SWITCH ........................................................................... 148
UPGRADE CATALOG ................................................... 150
VALIDATE ...................................................................... 150
wyraenieUntil.................................................................. 151

 

W niniejszym rozdziale zaprezentowano seri skryptw pakietu
RMAN oraz skryptw systemowych (korn), ktre su do
tworzenia kopii zapasowych bazy danych oraz jej poszczeglnych
komponentw. Pakiet RMAN moe archiwizowa pliki danych
(datafiles), pliki kontrolne (control files), archiwalne pliki dziennika powtrze (archived redo files) oraz elementy kopii zapasowej
(backup pieces). Pakiet RMAN nie tworzy kopii zapasowych aktywnych plikw dziennika powtrze (online redo logs).

%'
Czci standardowego dziaania pakietu RMAN w odniesieniu do
archiwizacji danych jest odczytywanie wszystkich blokw plikw
danych, sprawdzenie ich poprawnoci, a w kocu zapisanie informacji o wszelkich wykrytych nieprawidowociach. Informacje
dotyczce potencjalnych uszkodze s dostpne w widokach
V$BACKUP_CORRUPTION oraz V$COPY_ CORRUPTION.

Przed utworzeniem kopii zapasowej bazy danych musi by ona


zamontowana (tryb mount) lub otwarta. Wymg, by baza danych bya przynajmniej w trybie mount, jest spowodowany
koniecznoci zapewnienia dostpu programowi RMAN do
plikw kontrolnych docelowej bazy danych przed przeprowadzeniem procesu archiwizacji danych.


    

 
 
Przed utworzeniem kopii zapasowej zamknitych plikw danych (offline backup) naley zamkn baz danych, a nastpnie
uruchomi j ponownie w trybie mount. Baza danych nie musi
znajdowa si w trybie archivelog.



  

Poniszy skrypt (dla wersji Oracle9i*) zamyka baz danych,


montuje j (tryb mount), tworzy jej kopi zapasow, a w kocu
ponownie j otwiera:
#!/bin/ksh
rman target / <<EOF
shutdown immediate;
startup mount;
backup database format
'/d99/rmanback/brdstn/rman_%d_%t_%U.bus';
alter database open;
EOF
exit

Poniszy skrypt systemowy dla wersji Oracle8i tworzy pen


kopi zapasow bazy danych. Naley zwrci uwag, e skadnia polece jest tu nieco bardziej zoona w porwnaniu z wersj Oracle9i. Dla wersji Oracle8i polecenia allocate oraz
backup musz znajdowa si wewntrz polecenia run{}.
#!/bin/ksh
rman target / nocatalog <<EOF
shutdown immediate;
startup mount;
run {
allocate channel d1 type disk;
backup database format
'/d99/rmanback/brdstn/rman_%d_%t_%U.bus';
}
alter database open;
EOF
Exit

___________________________
*

Wyznacznikiem nie jest wersja serwera Oracle, ale programu Recovery


Manager. Np. dla wydania RMAN 8.1.7.0.0 z serwerem w wersji 9i naley
zastosowa wersj skryptu dla Oracle8i przyp. red.

 



%'
W obu przykadach zastosowano parametr format w celu podania
okrelonej lokalizacji oraz niepowtarzalnej nazwy dla elementw kopii zapasowej. Pominicie tego parametru powoduje, e
elementy kopii zapasowej kierowane s do katalogu $ORACLE_
HOME/dbs. Wicej szczegw na temat tego zagadnienia znajduje si w tabeli 1.1 w rozdziale Lista polece pakietu RMAN.


    
  
 
Przed utworzeniem kopii zapasowej otwartych plikw danych
(online backup) baza danych musi by otwarta oraz znajdowa
si w trybie archivelog. Jeli wykorzystywanym systemem jest
Oracle9i, skadnia odpowiedniego polecenia jest bardzo prosta:
RMAN> backup database format
2> '/d99/rmanback/brdstn/rman_%d_%t_%U.bus';

%'
W przeciwiestwie do standardowego sposobu tworzenia kopii
zapasowych otwartych plikw danych (gorcych kopii zapasowych) pakiet RMAN nie przecza przestrzeni tabel w tryb
backup. Nie s zatem generowane adne dodatkowe dzienniki
powtrze. W przypadku baz danych o wysokiej aktywnoci
moe to dawa znaczce korzyci zwizane z lepszym wykorzystaniem zasobw systemowych.

W przypadku wersji Oracle8i naley zastosowa polecenie


run{}:
RMAN> run {
2> allocate channel d1 type disk;




  

3> backup database format


4> '/d99/rmanback/brdstn/rman_%d_%t_%U.bus';
5> }

  


    
   

Moliwo podawania jedynie podzbioru przestrzeni tabel podczas procesu archiwizacji danych zwiksza zakres moliwych
strategii tworzenia kopii zapasowych. W przypadku wersji
Oracle9i skadnia polecenia jest bardzo prosta:
RMAN> backup tablespace system, users format
2> '/d99/rmanback/brdstn/rman_bckup_%d_%t_%U.bus';

W przypadku wersji Oracle8i naley ponownie zastosowa


polecenie run{}:
RMAN> run {
2> allocate channel d1 type disk;
3> backup format
4> '/d99/rmanback/brdstn/rman_bckup_%d_%t_%U.bus'
5> tablespace system, users include current
controlfile;
6> }

  


    

 
Pliki danych mona archiwizowa przez podanie ich numerw
lub nazw. Dla wersji Oracle9i skadnia polecenia jest prosta.
W przypadku tworzenia kopii zapasowej na dysku i jeli numery plikw archiwizowanych danych s znane, stosuje si nastpujce polecenie:
RMAN> backup datafile 1,2;

 



W analogicznej sytuacji dla wersji Oracle8i skadnia takiego


polecenia wyglda nastpujco:
RMAN> run {
2> allocate channel d1 type disk;
3> backup format
4> '/d99/rmanback/brdstn/rman_bckup_%d_%t_%U.bus'
5> datafile 1, 2;
6> }

Mona take poda nazw konkretnego pliku danych przeznaczonego do archiwizacji:


RMAN> run {
2> allocate channel d1 type disk;
3> backup format
4> '/d99/rmanback/brdstn/rman_bckup_%d_%t_%U.bus'
5> '/d01/oradata/workprd/users_01.dbf';
6> }

Jeeli archiwizacji poddaje si wicej plikw, ich nazwy naley


oddzieli przecinkami.

  


    

 
Przydatn waciwoci systemu Oracle9i jest moliwo automatycznej archiwizacji plikw kontrolnych po kadorazowym
wydaniu polecenia backup lub copy. Mona to osign za
pomoc polecenia configure w nastpujcy sposb:
RMAN> configure controlfile autobackup on;

Samodzielnie archiwizacj pliku kontrolnego w systemie Oracle9i przeprowadza si za pomoc polecenia:


RMAN> backup current controlfile;




  

Poniej przedstawiono przykad archiwizacji pliku kontrolnego


za pomoc skryptu systemowego. Jest on poprawny dla wersji
Oracle9i i Oracle8i:
#!/bin/ksh
# Plik: kopia_bezp_kontrol.ksh
#---------------------------------------------export ORACLE_HOME=/d00/app/oracle/product/9.0.0
export ORACLE_SID=brdstn
export PATH=/usr/sbin:/usr/bin:$ORACLE_HOME/bin
export MAILX="/usr/ucb/Mail"
export MAIL_LIST="chaya@garam.com"
#---------------------------------------------BOX=`uname -a | awk '{print$2}'`
#---------------------------------------------date
#---------------------------------------------rman nocatalog log=rman_kopia_kontrol.log <<EOF
connect target /
run {
allocate channel d1 type disk;
setlimit channel d1 kbytes 1900000;
backup
format '/d99/rmanback/brdstn/
rman_cntl_%d_%t_%U.bct'
(current controlfile);
release channel d1;
}
EOF
#
if [ $? -ne 0 ]; then
$MAILX -s "RMAN napotka problem z $ORACLE_SID
w $BOX" \
$MAIL_LIST <<EOF
Sprawd kopi bezpieczestwa RMAN pliku
kontrolnego...
EOF
#
else
print "Kopia bezpieczestwa RMAN pliku
kontrolnego zostaa poprawnie utworzona..."
fi

 



#---------------------------------------------date
#----------------------------------------------

  


    

 



   
W przypadku wersji Oracle9i skadnia polecenia tworzcego
kopi zapasow archiwalnych plikw dziennika powtrze
(archived redo log files) jest bardzo prosta:
RMAN> backup archivelog all;

Inn technik, moliw do zastosowania w systemie Oracle9i, jest


zastosowanie w poleceniu backup wyraenia plus archivelog,
dziki czemu archiwalne pliki dziennika powtrze wchodz
w skad kopii zapasowej. Wydanie poniszej instrukcji powoduje
utworzenie co najmniej dwch elementw kopii zapasowej dla
plikw danych i dla archiwalnych plikw dziennika powtrze:
RMAN> backup database format
2> '/d00/backup/rman_%U.bus' plus archivelog;

Znajdujcy si poniej prosty skrypt dziaa poprawnie zarwno


w przypadku wersji Oracle8i, jak i Oracle9i. Wykonanie skryptu
powoduje utworzenie kopii zapasowej wszystkich archiwalnych
plikw dziennika powtrze docelowej bazy danych:
RMAN> run {
2> allocate channel t1 type 'sbt_tape';
3> backup filesperset 5 format
4> '/d0100/backup/ar_%d_%t.bus' (archivelog all );
5> }


  

%'
Przydatn waciwoci pakietu RMAN jest jego zdolno odrniania tych archiwalnych plikw dziennika powtrze, ktrych zapis na dysku jest zakoczony. Dziki temu pakiet RMAN
nigdy nie podejmuje prby archiwizacji czciowo zapisanych
archiwalnych plikw dziennika powtrze.

Poniej przedstawiono kolejny przykad skryptu systemowego,


ktry za pomoc polece pakietu RMAN tworzy kopi zapasow archiwalnych plikw dziennika powtrze. Po jego uruchomieniu, w zbiorze kopii zapasowej znajd si wszystkie
archiwalne pliki dziennika powtrze utworzone w cigu ostatnich trzech dni.
#!/bin/ksh
# Plik: kopia_bezp_arch.ksh
#---------------------------------------------export ORACLE_HOME=/d00/app/oracle/product/9.0.0
export ORACLE_SID=brdstn
export PATH=/usr/sbin:/usr/bin:$ORACLE_HOME/bin
export MAILX="/usr/ucb/Mail"
export MAIL_LIST="heeraa@chamak.com"
#---------------------------------------------BOX=`uname -a | awk '{print$2}'`
#---------------------------------------------date
#---------------------------------------------rman nocatalog log=rman_kopia_arch.log <<EOF
connect target sys/pwd
run {
allocate channel d1 type disk;
setlimit channel d1 kbytes 1900000;
backup
format '/d99/backup/brdstn/arch_%d_%t.bus'
filesperset=50
archivelog from time 'sysdate-3';
release channel d1;
}

 



EOF
#
if [ $? -ne 0 ]; then
$MAILX -s "RMAN napotka problem z $ORACLE_SID
w $BOX" \
$MAIL_LIST <<EOF
Sprawd kopi bezpieczestwa RMAN archiwalnego
dziennika powtrze...
EOF
#
else
print "Kopia bezpieczestwa RMAN archiwalnego
dziennika powtrze zostaa poprawnie
utworzona..."
fi
#---------------------------------------------date
#----------------------------------------------

%'
Jeeli jaki proces nie zwizany z programem RMAN usunie
pliki dziennika powtrze, to ani w plikach kontrolnych, ani
w opcjonalnym katalogu odzyskiwania nie zostanie zapisana
adna informacja o tym, e te pliki nie s ju dostpne. Dlatego
te naley okresowo wydawa polecenie:
RMAN> change archivelog all validate;

Z tego wzgldu warto, aby program RMAN usuwa te pliki


z systemu w momencie, gdy nie s one ju potrzebne.

   
    
Jedn z najbardziej spektakularnych cech pakietu RMAN jest
moliwo tworzenia przyrostowych kopii zapasowych (incremental backups). W przypadku standardowej, opartej na powielaniu plikw, procedury tworzenia kopii zapasowych (na przykad




  

tworzenia gorcych lub zimnych kopii zapasowych) kopiowane


s wszystkie bloki plikw danych bazy docelowej, bez wzgldu
na to, czy byy one uywane, czy nie. Program RMAN posiada
moliwo sprawdzenia, ktre bloki plikw danych zostay zmienione od ostatniej archiwizacji. Dziki temu kopiowaniu podlegaj tylko bloki zmodyfikowane.

%'
Jeli podczas archiwizacji program RMAN kopiuje tylko zmodyfikowane bloki, proces ten nazywa si kompresj (compression). Nieuywane lub niezmodyfikowane bloki w pliku danych zostaj pominite.

Pomijanie nie zmienionych blokw daje ogromne korzyci poprzez


zmniejszenie wymaga co do zasobw systemowych. Oznacza
to take, e czas wykonania kopii zapasowej oraz ilo potrzebnego do jej przechowania miejsca na tamie lub dysku zale od
iloci dokonanych w bazie danych zmian, nie za od jej rozmiaru.
W przypadku bardzo duych baz danych ju tylko ten jeden argument moe uczyni zasadnym korzystanie z pakietu RMAN.
Wiele zagadnie dotyczcych kopii przyrostowych zwizanych
jest z pojciem poziomu (level). Podstaw idei tworzenia przez
pakiet RMAN wielopoziomowych kopii zapasowych jest zaoenie, e archiwizowa naley tylko te bloki, ktre zostay
zmodyfikowane od czasu poprzedniej archiwizacji. Tworzenie
kopii przyrostowych mona stosowa w odniesieniu do caej
bazy danych, jak rwnie danych przestrzeni tabel lub plikw
danych. Posugiwanie si poziomami okrelane jest w przypadku systemw Oracle jako tworzenie wielopoziomowej przyrostowej kopii zapasowej (multilevel incremental backup). Istnieje
pi poziomw kopii zapasowej w przedziale od 0 do 4 (level 0
level 4).
 

!

Istniej dwa rodzaje przyrostowych kopii zapasowych rnicowe (differential) oraz kumulacyjne (cumulative). Tworzenie
rnicowej kopii przyrostowej polega na tym, e pakiet RMAN
archiwizuje tylko te bloki, ktre zostay zmienione od czasu
utworzenia kopii poziomu n lub niszego. Przykadowo, jeli
tworzy si rnicow kopi przyrostow poziomu 1, archiwizacji podlegaj bloki, ktre zostay zmodyfikowane od czasu
poprzedniej archiwizacji na poziomie 1. W przypadku pakietu
RMAN tworzenie kopii rnicowych jest domylnym trybem
przeprowadzania archiwizacji przyrostowej.

%'
W razie tworzenia przyrostowej kopii zapasowej o poziomie
wyszym od 0, jeli nie wykonano wczeniej adnej archiwizacji na tym poziomie, pakiet RMAN automatycznie tworzy kopi poziomu 0.

Tworzenie kumulacyjnej kopii przyrostowej polega na tym, e


pakiet RMAN archiwizuje tylko te bloki, ktre zostay zmienione od czasu utworzenia kopii poziomu n-1 lub niszego.
Przykadowo, jeli tworzy si kumulacyjn kopi przyrostow
poziomu 1, nastpi archiwizacja blokw, ktre zostay zmodyfikowane od czasu ostatniej archiwizacji na poziomie 0.
Udostpnienie tych wszystkich moliwoci pozwala na wybr
najodpowiedniejszej w danej sytuacji strategii archiwizacji danych. Rnicowa kopia bezpieczestwa zajmuje mniej miejsca
i jej utworzenie trwa krcej, ale odtworzenie danych na podstawie tej kopii zabiera wicej czasu. Z kolei kopia kumulacyjna
zajmuje wicej miejsca i wicej czasu trwa jej utworzenie, ale
odtworzenie danych na jej podstawie jest szybsze. Zatem
w zalenoci od specyficznych cech aplikacji naley podj decyzj, czy waniejsze jest zminimalizowanie czasu tworzenia kopii



  

zapasowych danych, czy te czasu odtwarzania danych. W przypadku maych baz danych zaleca si wykorzystanie pakietu
RMAN do codziennego wykonywania kopii zapasowej poziomu 0.

%'
Pena archiwizacja (full backup) polega na tworzeniu kopii zapasowej dokadnie tych samych blokw, co w przypadku archiwizacji na poziomie 0. Rnica midzy tymi procesami
wynika z tego, e kolejne procesy archiwizacji przyrostowej
zachodz w sposb cakowicie niezaleny od istnienia penej
kopii bezpieczestwa. Dlatego te pene kopie nie mog zosta
zastosowane w celu odtwarzania danych z kopii przyrostowych. Tworzenie penej kopii zapasowej jest domylnym trybem archiwizacji w przypadku, gdy nie podano adnego
poziomu przyrostu.

Poniej znajduje si przykad utworzenia kopii kumulacyjnej


(dla systemu Oracle9i), gdzie program RMAN archiwizuje
wszystkie bloki, ktre zostay zmodyfikowane od czasu ostatniej archiwizacji na poziomie 3 lub niszym, oraz pomija przestrzenie tabel przeznaczone tylko do odczytu (read only):
RMAN> backup incremental level 4 cumulative database
2> skip readonly;

Poniej przedstawiono przykad utworzenia rnicowej kopii


bezpieczestwa w przypadku systemu Oracle8i. Archiwizacji
podlegaj wszystkie bloki, ktre zostay zmodyfikowane od
czasu ostatniej archiwizacji na poziomie 1 lub niszym:
RMAN> run {allocate channel d1 type disk;
2> backup incremental level 1 format
3> '/d0101/backup/rman_%U.bus' database;}

 



 
  


    
Powyej omwiono rne scenariusze archiwizacji danych.
W dalszej czci niniejszego rozdziau przedstawiono polecenia
suce do informowania o spjnoci kopii zapasowych lub
zwikszania wydajnoci procesu ich tworzenia.


   

Jedn z poytecznych cech pakietu RMAN jest moliwo
kontrolowania stanu kopii zapasowej. Najprostszym sposobem
zapoznania si z tymi informacjami jest wydanie polecenia
list backup.
RMAN> list backup;

Efektem wykonania polecenia list backup jest wywietlenie informacji o nazwie, poziomie, czasie utworzenia oraz stanie kadej z kopii zapasowych. Ponadto pakiet RMAN ma
moliwo prostego sprawdzenia odtwarzalnoci plikw danej
kopii zapasowej. Do tego celu suy polecenie restore database validate. Efektem wykonania tej komendy nie
jest przeprowadzenie samego procesu odtwarzania, lecz jedynie
sprawdzenie, czy zawarto zbiorw kopii zapasowej moe zosta w razie potrzeby odtworzona. Poniej przedstawiono przykad zastosowania tego polecenia dla aplikacji dziaajcej
w systemie Oracle8i i Oracle9i:
RMAN> run {
2> allocate channel d1 type disk;
3> restore database validate;
4> }

!


  

 

Przydatn cech systemu Oracle9i jest moliwo zmiany
domylnych waciwoci kanau. Po zmianie waciwoci te
zostaj zapisane w pliku kontrolnym i s zachowywane na potrzeby kolejnych sesji programu RMAN. Poniej przedstawiono
przykad zmiany domylnej wartoci parametru rate (maksymalna liczba danych czytanych przez kana) urzdzenia dyskowego oraz wartoci acucha formatujcego:
RMAN> configure channel device type disk
2> rate 1000000 format '/d99/rmanback/rman_%U.bus';

Przegldanie wszystkich ustawie konfiguracyjnych jest moliwe po wydaniu dostpnego w wersji Oracle 9i polecenia
show all:
RMAN> show all;
RMAN configuration parameters are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
# default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE
TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1;
# default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE
DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE
DISK TO 1; # default
CONFIGURE CHANNEL DEVICE TYPE DISK RATE 1000000
FORMAT '/d99/rmanback/rman_%U.bus';
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/d00/
app/oracle product/9.0.0/dbs/snapcf_dev900.f';
# default

 

!

Warto zauway, e pozycje, dla ktrych ustawienia domylne


nie zostay zmienione, s oznaczone przez # default.
Aby skasowa ustawienia waciwoci kanau, wydaje si polecenie configure clear. Poniej przedstawiono przykad
polecenia, ktrego wydanie przywraca domylne ustawienia
waciwoci urzdzenia:
RMAN> configure default device type clear;


 
    
W celu zwikszenia wydajnoci pracy aplikacji program RMAN
moe rozdzieli wykonanie pewnych polece na kilka rwnolegych procesw. Nie oznacza to, e w razie wywoania kilku
polece bd one wszystkie wykonywane rwnoczenie, ale e
wykonanie kadego z nich oddzielnie zostanie rozbite na rwnolege procesy.
Dobrym przykadem przetwarzania rwnolegego (parallelization) jest wykonanie polecenia backup. Jeli przydzielonych
jest kilka kanaw, program RMAN jednoczenie korzysta
z kilku procesw w celu wykonania tego polecenia. Dane zapisywane s jednoczenie przez wszystkie kanay:
RMAN> configure device type disk parallelism 3;
RMAN> backup database format '/d99/rmanback/
rman_%U.bus';

W efekcie podczas archiwizacji bazy danych wykorzystywane


s trzy rwnolege procesy.

!


  


  
Pakiet RMAN udostpnia moliwo nadawania zbiorom kopii
zapasowych nazw odpowiadajcych wymaganiom uytkownika.
Przykadowo, pozwala to na atwe rozrnianie kopii zapasowych tworzonych codziennie i co tydzie, lub te na rozrnianie przyrostowych kopii zapasowych tworzonych na rnych
poziomach. W celu nadania odpowiedniej nazwy stosuje si sowo
kluczowe tag w poleceniu backup. Poniej przedstawiono przykad oznaczenia kopii zapasowej poziomu 3 jako inc_level_3:
RMAN> backup incremental level 3 tag inc_level_3
format
2> '/d99/rmanback/rman_%U.bus';

Znaczniki (tags) mog by stosowane w poleceniu list w celu


szybkiego zlokalizowania zbiorw kopii zapasowych, a take
w poleceniach restore oraz switch. Ta sama warto
znacznika moe by wykorzystana dla wielu rnych zbiorw
kopii zapasowych, zatem nie musi by ona niepowtarzalna. Jeli
warto danego znacznika jest niejednoznaczna, zostanie ona
zastosowana do opisania ostatnio utworzonego zbioru kopii
zapasowych o podanej w znaczniku wartoci.
W poniszym przykadzie przedstawiono zastosowanie polecenia list wywietlajcego informacje o istniejcej kopii zapasowej, ktr oznaczono jako inc_level_3:
RMAN> list backuppiece tag=inc_level_3;




W zasadzie odtwarzanie plikw skada si z trzech istotnych


etapw:

"# $

!

You might also like