Oracle Data Guard 10g - wysoce niezawodna konfiguracja ...€¦ · Oracle Data Guard 10g – wysoce...
Transcript of Oracle Data Guard 10g - wysoce niezawodna konfiguracja ...€¦ · Oracle Data Guard 10g – wysoce...
XI Seminarium PLOUG
Warszawa
Czerwiec 2005
Oracle Data Guard 10g -
wysoce niezawodna konfiguracja serwera
bazy danych Oracle
Juliusz.Jezierski
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 33
©PLOUG2
Plan Plan tutorialututorialu
♦ Wstęp
♦ P rzegląd architektury S ZBD Oracle
♦ Wprowadzenie do Oracle Data Guard
♦ Konfigurowanie Oracle Data Guard za pomocą E M Grid C ontrol
♦ Zamiany ról produkcyjnej i czuwającej baz danych (switchover)
♦ P rzykładowa diagnostyka niedostępności czuwającej bazy danych
♦ P rzykładowa diagnostyka niedostępności produkcyjnej bazy danych
♦ P rzełączenie czuwającej bazy danych do roli produkcyjnej bazy danych - failover
♦ P odsumowanie
©PLOUG1
Oracle Data Oracle Data GuardGuard 10g 10g --
wys oce niezawodna konfiguracja wys oce niezawodna konfiguracja
s erwera bazy danych Oracles erwera bazy danych Oracle
Juliusz.Jezierski@ cs.put.poznan.pl
34 Juliusz Jezierski
©PLOUG3
Ws tWs tęępp
♦ Disaster R ecovery J ournal: wiele firm zlokalizowanych w
budynkach World Trade C enter po tragicznych
wydarzeniach z 11 września 2001 było zdolnych do
kontynuowania swojej pracy
♦ J . Hickman & W . C randall, B usiness Horizons:
� 80 procent firm w okresie dwóch lat po katastrofalnej utracie
sprzętu i danych jest zmuszonych do zakończenia s wojej
dzia łalności
� 93 procent tych firm zamyka działalność w okresie pięciu lat
♦ Oracle Data Guard 10g:
� W ysoka dostępność danych,
� Zwiększona ochrona danych,
� Możliwość odtworzenia bazy danych po katastrofalnej awarii
� Możliwość zwiększenia wydajności aplikacji raportujących
©PLOUG4
PrzeglPrzegląąd architektury S ZB D Oracled architektury S ZB D Oracle
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 35
©PLOUG
BieBieżążące pliki dziennika powtce pliki dziennika powtóórzerzeńń♦ P rocesy serwerów wszystkie swoje zmiany dokonywane
w buforze danych rejestrują w buforze dziennika powtórzeń
♦ P roces LGWR przepisuje zawartość bufora dziennika powtórzeń do bieżących plików dziennika powtórzeń
SGA - współdzielona
pamięć operacyjna
LGWRLGWR
Bieżące pliki
dziennikapowtórzeń
bufor dziennika
powtórzeńbufor
danych
SQLSQLSQLSQL
SQLSQL procesy serwerów
sqlplussqlplus
formularzformularzraportraport
aplikacje
©PLOUG6
PrzePrzełąłączanie bieczanie bieżążących plikcych plikóów dziennika w dziennika
powtpowtóórzerzeńń
LGWRLGWR
12 13 1415
♦ Liczba i rozmiar bieżących plików dziennika powtórzeń, która jest ustawiana podczas tworzenia BD, można zmieniać w trakcie eksploatacji za pomocą polecenia ALTE R DATABAS E
♦ Zawartość bieżących plików dziennika powtórzeń jest nadpis ywanaprzez LGW R podczas procesu przełączania
36 Juliusz Jezierski
©PLOUG
Archiwizacji bieArchiwizacji bieżążących plikcych plikóów dziennika w dziennika
powtpowtóórzerzeńń
♦ Archiwizacją bieżących plików dziennika powtórzeń zajmuje się proces archiwizatora
bieżące pliki dziennika
powtórzeń
bufor dziennika
powtórzeń
Zarchiwizowane
plikidziennika
powtórzeń
LGWRLGWR ARC0ARC0
15
1413
12
14
©PLOUG8
Wprowadzenie do Oracle Data Wprowadzenie do Oracle Data GuardGuard
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 37
©PLOUG9
Koncepcja ODGKoncepcja ODG
Produkcyjnabaza danych
Czuwającabaza danych
Baza danych Kopia bazy danych
Transportplików dziennika
powtórzeń
Orac
le N
et
©PLOUG10
Zamiana rZamiana róóll
♦ J awnie (nieautomatycznie) wykonywana przez DBA
♦ S witchover
� planowana zmiana ról
� S tosowana w celu pielęgnacji sprzętu i systemu operacyjnego
♦ Failover
� nieplanowana zmiana ról
� S tosowana w awaryjnych sytuacjach
� Minimalna lub zerowa (w zależności od wybranej konfiguracji) utrata
danych
38 Juliusz Jezierski
©PLOUG11
Typy czuwajTypy czuwająących baz danychcych baz danych
♦ Fizyczna czuwająca baza danych
� Binarna kopia produkcyjnej bazy danych
� S ynchronizowana przez aplikowania binarnych zmian
zarejestrowanych w dziennikach powtórzeń produkcyjnej bazy
danych
♦ Logiczna czuwająca baza danych
� Logiczna kopia obiektów (tabel, indeksów, itp.) produkcyjnej bazy
danych
� S ynchronizowana przez uruchamianie poleceń S QL
ekstrahowanych za pomocą technologii Log Miner z dzienników
powtórzeń produkcyjnej bazy danych
©PLOUG12
Tryby dziaTryby działłania ODGania ODG
♦ Maksymalna Ochrona -� zapewnia bezstratne odtworzenie danych,
� zapisy z dziennika powtórzeń produkcyjnej bazy danych sątransmitowane synchronicznie - transakcje produkcyjnej bd sązatwierdzane dopiero po pomyślnej transmisji do co najmniej jednej czuwającej bd,
� przy braku dostępności choć jednej czuwającej bazy danych, produkcyjna bd się zatrzymuje
♦ Maksymalna Dostępność -� Zapisy dziennika powtórzeń produkcyjnej bd są transmitowane
synchronicznie
� J ednak przy braku dostępności choć jednej czuwającej bazy danych, produkcyjna bd kontynuuje działanie
� C zuwające bd czasowo mogą być niespójne z produkcyjną bd
♦ Maksymalna Wydajność -� Zapisy dziennika powtórzeń produkcyjnej bd są transmitowane
asynchronicznie
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 39
©PLOUG13
Komponenty konfiguracji ODGKomponenty konfiguracji ODG
♦ LGWR - proces rejestrujący w bieżących plikach dziennika powtórzeń zmiany wprowadzone do BD
♦ AR C 0 - proces archiwizujący zawartość bieżących plików dziennika powtórzeń w zarchiwizowanych plikach dziennika powtórzeń
♦ FAL - proces odtwarzający dziury w sekwencji plików dziennika powtórzeń przes łanych do czuwającej BD
♦ R FS - proces odbierający pliki dziennika powtórzeń
♦ MR P - aplikuje zmiany zapisane w plikach dziennika powtórzeń do fizycznej czuwającej BD
♦ LS P - aplikuje polecenia S QL zapisane w plikach dziennika powtórzeń do logicznej czuwającej BD
©PLOUG14
Konfiguracja ODG z fizycznKonfiguracja ODG z fizycznąą czuwajczuwająąca ca bdbd
i trans portem przez AR C0i trans portem przez AR C0
LGWR
ARCO
FAL
RFS
MRP
Oracle
net
Transakcje
produkcyjnej BD
Bieżące
pliki
dziennika
powtórzeń
Fizyczna
czuwająca BD
raporty
backup
Zarchiwizowane
pliki dziennika
powtórzeń
Zarchiwizowane
pliki dziennika
powtórzeń
40 Juliusz Jezierski
©PLOUG15
Konfiguracja ODG z fizycznKonfiguracja ODG z fizycznąą czuwajczuwająąca ca bdbd
i trans portem przez LGWRi trans portem przez LGWR
LGWR
ARCO
RFS
MRP
ARCO
Oracle
net
Transakcje
produkcyjnej BD
Bieżące
pliki
dziennika
powtórzeń
Fizyczna
czuwająca BD
raporty
backup
Zarchiwizowane
pliki dziennika
powtórzeń
Zarchiwizowane
pliki dziennika
powtórzeń
FAL
Czuwające
pliki dziennika
powtórzeń
©PLOUG16
Konfiguracja ODG z logicznKonfiguracja ODG z logicznąą czuwajczuwająąca ca bdbd
LSPTransakcje
produkcyjnej BD
Bieżące
pliki
dziennika
powtórzeń
Logiczna
czuwająca BD
raporty
backup
Zarchiwizowane
pliki dziennika
powtórzeń
Zarchiwizowane
pliki dziennika
powtórzeń
LGWR
ARCO
RFS
Oracle
net
FAL
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 41
©PLOUG17
ODG BrokerODG B roker
♦ K omponent ułatwiający tworzenie, sterowanie i
monitorowanie produkcyjnej bazy danych i wszystkich jej
czuwających baz danych
♦ ODG B roker monitoruje dostępność, aktywność i stan
zdrowia wszystkich systemów w danej konfiguracji ODG
♦ P osiada W E B -owy interfejs zintegrowany z OE M Grid
C ontrol
♦ P osiada również interfejs z linii komend - dgmgrl
©PLOUG18
Architektura ODG B rokerArchitektura ODG B roker
Przeglądarka WEB
repozytorium
Produkcyjna
baza
danychData
GuardBroker
OEM GridControl
DataGuardBroker
IntelligentAgent
Czuwająca
baza
danych
IntelligentAgent
dgmgrl
42 Juliusz Jezierski
©PLOUG19
Konfiguracja ins tancji z ODG B rokerKonfiguracja ins tancji z ODG B roker
ins tancja
produkcyjnej
bazy danych
ins tancja
produkc yjnej
bazy danych
ins tancja
czuwającej
bazy danych
ins tancja
czuwającej
bazy danych
Produkcyjna baza danych Czuwająca baza danych
DMONDMONDMONDMON
Dziennik ODG Broker-
background_dump_dest
drc<SID>.ora
spfile<SID>.ora
dg_broker_start=true
dg_broker_config_file1
dg_broker_config_file2
Dziennik ODG Broker-
background_dump_dest
drc<SID>.ora
spfile<SID>.ora
dg_broker_start=true
dg_broker_config_file1
dg_broker_config_file2
©PLOUG20
Konfigurowanie Oracle Data Konfigurowanie Oracle Data GuardGuard
za pomocza pomocąą E M E M GridGrid C ontrolC ontrol
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 43
©PLOUG21
Wymagania ODGWymagania ODG
♦ P rodukcyjna baza danych musi działać w trybie archiwizacji
plików dziennika - AR C HIVE LOG
♦ P rodukcyjna baza danych i czuwające bazy danych muszą
działać pod kontrolą takiego samego S ZB D i S O
♦ Każda baza danych musi posiadać swój plik kontrolny
♦ Zaleca się włączenie rejestracji wszystkich operacji na
produkcyjnej bazie danych w plikach dziennika powtórzeń -
FOR C E LOGGING
©PLOUG22
WywoWywołłanie GUI dla ODGanie GUI dla ODG
44 Juliusz Jezierski
©PLOUG23
Dodanie czuwajDodanie czuwająącej BDcej BD
©PLOUG24
S konfigurowanie S konfigurowanie spfilespfile
SQL> connect / as sysdba
Connected.
SQL> create spfile from pfile;
File created.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Database mounted.
Database opened.
SQL> show parameter spfile
NAME TYPE VALUE
---------------------- -------- ------------------------------
spfile string ?/dbs/spfileDB100.ora
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 45
©PLOUG25
Dodanie fizycznej czuwajDodanie fizycznej czuwająącej BDcej BD
©PLOUG26
PrzePrzełąłączenie BD w tryb archiwizacji czenie BD w tryb archiwizacji
dziennika powtdziennika powtóórzerzeńń
46 Juliusz Jezierski
©PLOUG27
Us tawienie parametrUs tawienie parametróów ins tancji dla w ins tancji dla
archiwizacji plikarchiwizacji plikóów dziennika powtw dziennika powtóórzerzeńń
©PLOUG28
Dodanie fizycznej czuwajDodanie fizycznej czuwająącej BDcej BD--
krok 1krok 1
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 47
©PLOUG29
Dodanie fizycznej czuwajDodanie fizycznej czuwająącej BDcej BD--
krok 2krok 2
©PLOUG30
Dodanie fizycznej czuwajDodanie fizycznej czuwająącej BDcej BD--
krok 3krok 3
48 Juliusz Jezierski
©PLOUG31
Dodanie fizycznej czuwajDodanie fizycznej czuwająącej BDcej BD--
krok 4krok 4
©PLOUG32
Dodanie fizycznej czuwajDodanie fizycznej czuwająącej BDcej BD--
wskazanie lokalizacji plikwskazanie lokalizacji plikóów czuwajw czuwająącej BDcej BD
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 49
©PLOUG33
Dodanie fizycznej czuwajDodanie fizycznej czuwająącej BDcej BD--
krok 5krok 5
©PLOUG34
Dodanie fizycznej czuwajDodanie fizycznej czuwająącej BDcej BD--
krok 6krok 6
50 Juliusz Jezierski
©PLOUG35
Uruchomienie zadania tworzenia Uruchomienie zadania tworzenia
czuwajczuwająącej BDcej BD
©PLOUG36
Tworzenie czuwajTworzenie czuwająącej BDcej BD
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 51
©PLOUG37
S tatus czuwajS tatus czuwająącej bazy danychcej bazy danych
©PLOUG38
Zmiana trybu ochrony produkcyjnej bazy Zmiana trybu ochrony produkcyjnej bazy
danychdanych
52 Juliusz Jezierski
©PLOUG39
Us tawienie trybu ochrony produkcyjnej Us tawienie trybu ochrony produkcyjnej
bazy danych na maks ymalna dos tbazy danych na maks ymalna dos tęępnopnośćść
©PLOUG40
Kroki zmiany trybu ochrony produkcyjnej Kroki zmiany trybu ochrony produkcyjnej
bazy danychbazy danych
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 53
©PLOUG41
Zmiana trybu dziaZmiana trybu działłania czuwajania czuwająącej BDcej BD
©PLOUG42
Zmiana wZmiana włłas noas nośści czuwajci czuwająącej BDcej B D
AR C H, S YNC , AS YNC
OFF, ON
54 Juliusz Jezierski
©PLOUG43
S tartowanie instancji czuwajS tartowanie instancji czuwająącej bazy cej bazy
danych za pomocdanych za pomocąą S QLS QL
♦ W dwóch trybach:
� W trybie sterowanego odtwarzania:
� W trybie tylko do odczytu:
SQL> startup mountORACLE instance started.
...
Database mounted.
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;Database altered.
SQL> select OPEN_MODE from v$database;OPEN_MODE----------MOUNTED
SQL> startup mountORACLE instance started.
...
Database mounted.
SQL> ALTER DATABASE OPEN READ ONLY;Database altered.
SQL> select OPEN_MODE from v$database;OPEN_MODE----------READ ONLY
©PLOUG44
Zamiany rZamiany róól produkcyjnej i czuwajl produkcyjnej i czuwająącej cej
baz danych (baz danych (switchoverswitchover) )
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 55
©PLOUG45
Kroki przygotowania do zamiany rKroki przygotowania do zamiany róól l
produkc yjnej i czuwajprodukc yjnej i czuwająącej baz danychcej baz danych
♦ Upewnienie się, że produkcyjna i czuwająca baza danych
działają
♦ S prawdzenie, że obie bazy danych są w dobrym stanie
zdrowotnym (przez weryfikację plików ostrzeżeń instancji)
♦ S prawdzenie własności podstawowej bazy danych aby
mogła pełnić rolę czuwającej bazy danych (automatycznie
wykonywane przez E M)
♦ J eżeli trzeba, sprawdzić istnienie czuwających plików
dziennika powtórzeń
©PLOUG46
Zmiana roli produkcyjnej bazy danych na Zmiana roli produkcyjnej bazy danych na
czuwajczuwająąccąą bazbazęę danych za pomocdanych za pomocąą E ME M
56 Juliusz Jezierski
©PLOUG47
Zmiana roli produkcyjnej bazy danych na Zmiana roli produkcyjnej bazy danych na
czuwajczuwająąccąą bazbazęę danych za pomocdanych za pomocąą E ME M
©PLOUG48
Wynik zamiany rWynik zamiany róóll
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 57
©PLOUG49
PrzykPrzykłładowa diagnos tyka adowa diagnos tyka
niedos tniedos tęępnopnośści czuwajci czuwająącej bazy cej bazy
danychdanych
©PLOUG50
Analiza pliku os trzeAnaliza pliku os trzeżżeeńń
58 Juliusz Jezierski
©PLOUG51
Analiza s tatus u ODGAnaliza s tatus u ODG
©PLOUG52
Analiza dziennika ODG BrokerAnaliza dziennika ODG Broker
[oracle@miner bdump]$ more drcDB101dg.logDG 2005-06-13-18:45:06 RSM 0 received GETPROP request: rid=0x02012000, pid=58DG 2005-06-13-18:45:06 Database Resource: Get Property PotentialDataLossDG 2005-06-13-18:45:06 RSM0: Failed to connect to remote database DB101. Error isORA-12514DG 2005-06-13-18:45:06 Database Resource GetProperty succeeded
adm101@miner bdump]$ oerr ora 1251412514, 00000, "TNS:listener does not currently know of service requested in connectdescriptor"// *Cause: The listener received a request to establish a connection to a// database or other service. The connect descriptor received by the listener// specified a service name for a service (usually a database service)// that either has not yet dynamically registered with the listener or has// not been statically configured for the listener. This may be a temporary// condition such as after the listener has started, but before the database// instance has registered with the listener.// *Action:// - Wait a moment and try to connect a second time.// - Check which services are currently known by the listener by executing:// lsnrctl services <listener name>// - Check that the SERVICE_NAME parameter in the connect descriptor of the// net service name used specifies a service known by the listener.// - If an easy connect naming connect identifier was used, check that// the service name specified is a service known by the listener.// - Check for an event in the listener.log file.
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 59
©PLOUG53
PrzykPrzykłładowa diagnos tyka adowa diagnos tyka
niedos tniedos tęępnopnośści produkc yjnej baz ci produkc yjnej baz
danychdanych
©PLOUG54
Analiza s tatus u baz danych na danej Analiza s tatus u baz danych na danej
mas zynie mas zynie
60 Juliusz Jezierski
©PLOUG55
Analiza s tatus u produkc yjnej B DAnaliza s tatus u produkc yjnej B D
©PLOUG56
PrzePrzełąłączenie czuwajczenie czuwająącej bazy danych cej bazy danych
do roli produkcyjnej bazy danych do roli produkcyjnej bazy danych --
failoverfailover
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 61
©PLOUG57
FailoverFailover
♦ Wykonywany jedynie w przypadku braku możliwości
odtworzenia produkcyjnej bazy danych
♦ Możliwa utrata części danych
♦ Uszkodzona produkcyjna baza danych jest wyłączana z
konfiguracji ODG
♦ S zczególnym przypadkiem failover jest aktywacja wybranej
czuwającej bazy danych - niezalecana - powoduje trwałe
wyłączenie pozostałych czuwających baz danych
©PLOUG58
Inicjacja Inicjacja failoverfailover
62 Juliusz Jezierski
©PLOUG59
WybWybóór opcji r opcji failoverfailover
©PLOUG60
Pos tPos tęęp proces u p proces u failoverfailover
Oracle Data Guard 10g – wysoce niezawodna konfiguracja serwera bazy danych Oracle 63
©PLOUG61
Weryfikacja s tatus u Weryfikacja s tatus u failoverfailover
©PLOUG62
Pods umowaniePods umowanie
♦ ODG jest złożonym środowiskiem s łużącym zwiększeniu
niezawodności serwerów baz danych Oracle
♦ Zarządzanie ODG jest maksymalnie uproszczone przez
zastosowanie E M Grid C ontrol
♦ C zuwające bazy danych mogą być wykorzystane przez
aplikacje raportujące (read-only)
64 Juliusz Jezierski
©PLOUG63
LiteraturaLiteratura
♦ Oracle Data Guard C oncepts and Administration 10g
♦ Oracle Data Guard Broker 10g
♦ Oracle Database Administrator's Guide 10g
♦ Oracle Database C oncepts 10g
♦ Oracle Data Guard - Technical White P aper
http://www.oracle.com/technology/deploy/availability/pdf/
TWP_DataGuard_10gR 2.pdf