Architektura serwera Oracle7



Pobieranie 390,57 Kb.
Strona1/8
Data22.05.2018
Rozmiar390,57 Kb.
  1   2   3   4   5   6   7   8

Michał Rudowski




Materiały pomocnicze do wykładu z zakresu architektury i administracji RDBMS ORACLE8



  1. Architektura serwera Oracle8

Aby efektywnie zarządzać bazą danych, administrator bazy danych (DBA) powinien dokładnie znać i rozumieć architekturę serwera Oracle. Powinien znać wszystkie elementy architektury i znać zadania każdego z tych elementów. DBA musi rozumieć następujące elementy:



Instancja Oracle:

Procesy


Struktury pamięci - SGA

Baza danych Oracle: Pliki danych, sterujący i dziennika powtórzeń

Plik parametrów (inicjalizacyjny, konfiguracyjny, startowy) - init.ora

Obszar globalny procesu (PGA) - obszar stosu i dane o sesji użytkownika

Struktury pamięci obszaru SGA:

Obszar Dzielony

Bufory bazy danych

Bufor dziennika powtórzeń



Procesy tła (obowiązkowo muszą wystąpić procesy PMON, SMON, DBWR, LGWR i CKPT):

PMON


Porządkuje system po awaryjnym przerwaniu podłączenia.

Wycofuje nie zatwierdzone transakcje.

Zwalnia blokady nałożone przez przerwany proces.

Zwalnia zasoby SGA zajęte przez przerwany proces.

Uruchamia ponownie przerwane procesy serwera dzielonego i dyspozytora.

SMON


Wykonuje automatyczne odtwarzanie instancji.

Zwalnia obszar zajęty przez nieużywane już segmenty tymczasowe.

Łączy obszary wolnej przestrzeni plików danych w spójny obszar.

DBWR


Zapisuje wszystkie zmodyfikowane bufory do plików danych.

Używa listy LRU do pozostawiania ostatnio używanych bloków.

Zmniejsza liczbę zapisów fizycznych dzięki opóźnieniu zapisu.

LGWR


Zapisuje pozycje z bufora dziennika powtórzeń do plików dziennika powtórzeń kiedy:

Wystąpi zdarzenie zatwierdzenia transakcji.

Bufor dziennika powtórzeń zostanie zapełniony w jednej trzeciej.

DBWR zakończy oczyszczanie buforów bloków przy punkcie kontrolnym.

Wystąpi time - out procesu LGWR.

CKPT


Modyfikuje nagłówki plików danych i plików kontrolnych w momencie zakończenia punktu kontrolnego (synchronizacja dla celów odtwarzania).

ARCH


Kopiuje pliki dziennika powtórzeń na taśmę lub dysk dla zapewnienia możliwości odtwarzania po awarii nośnika.

Aktywowany tylko po wystąpieniu przełączenia dziennika.

Jest opcjonalny, potrzebny tylko w trybie ARCHIVELOG.

Może zapisywać na taśmę lub na dysk.

RECO (recoverer)

Rozwiązuje problemy związane z awarią transakcji rozproszonych.

LCKn (lock)

Kontroluje blokady pomiędzy instancjami w konfiguracji systemu serwerów równoległych.

Pnnn (parallel query)

Umożliwia równoległe wykonywanie zapytań, równoległe tworzenia indeksów, równoległe ładowanie danych i równoległe wykonanie CREATE TABLE AS SELECT.

SNPn (snapshot)

Wykonuje automatyczne odświeżanie migawek (replikacji tabel przeznaczonych tylko do odczytu). Jest też odpowiedzialny za kolejkę zadań serwera i kolejkę replikacji.



Pozostałe procesy

Procesy użytkownika - procesy programów wydających polecenia SQL

Procesy serwerów - procesy pierwszoplanowe

Pliki bazy danych:

Pliki dziennika powtórzeń (powinny być zwielokrotnione na różnych dyskach).

Plik kontrolny (sterujący).

Identyfikuje wszystkie niezbędne pliki bazy danych i pliki dziennika.

W pliku kontrolnym zapamiętana jest nazwa bazy danych.

Jest niezbędny do zamontowania, otwarcia i używania bazy danych.

Przechowuje informację synchronizującą, potrzebną przy odtwarzaniu.

Zalecana konfiguracja to minimum dwa pliki kontrolne przechowywane na różnych dyskach.

Parametr CONTROL_FILES w pliku parametrów identyfikuje pliki kontrolne.

Pliki danych - zawierają dane w segmentach.



Pozostałe pliki:

Plik parametrów

Potrzebny do uruchomienia instancji, zawiera także informacje dotyczące bazy danych. Nie zaliczamy go do bazy danych.

Plik alarmów - Alert file

Zawiera informacje opisujące pojawiające się błędy wewnętrzne (ORA-600), błędy zniszczenia bloku (ORA-1578), błędy zakleszczenia (ORA-60). działania administracyjne (DDL) i polecenia sterowania serwerem (STARTUP, SHUTDOWN, ARCHIVE LOG, i RECOVER), oraz wszystkie inne niż domyślne wartości parametrów inicjalizacji z chwili startu instancji.

Pliki śladu

Zawierają informacje o błędach wewnętrznych odnotowanych przez proces serwera lub proces tła. Tworzone w BACKGROUND_DUMP_DEST lub USER_DUMP_DEST jeśli SQL_TRACE = TRUE albo jeśli SQL_TRACE jest włączone dla sesji.

2. Wybieranie i Aktualizacja Danych

Proces serwera na żądanie procesu użytkownika realizuje polecenia SQL takie jak SELECT, INSERT, UPDATE, DELETE.



Kroki przetwarzania polecenia SQL:

Krok 1: Analiza

Krok 2: Wykonanie

Krok 3: Sprowadzanie



Obszary Dzielone SQL:

Identyczne polecenia SQL wykorzystują ten sam obszar dzielony SQL.

Polecenia SQL są uważane za identyczne jeżeli:

Zapis jest absolutnie identyczny, z dokładnością do małych i wielkich liter, separatorów itp.

Odwołują się do tych samych obiektów.

Typy i nazwy zmiennych są identyczne.

Wszystkie polecenia SQL są przetwarzane przez proces serwera, który otrzymuje żądania bezpośrednio od procesu użytkownika.

Odczytywane oraz nie zatwierdzone zmodyfikowane dane przechowywane są w blokach danych lub blokach wycofania w buforach bazy danych w pamięci.

Bloki wycofania przechowują obraz wcześniejszy modyfikowanych danych używany podczas odtwarzania.

Podstawowym zadaniem DBWR jest zapis wszystkich zmienionych buforów do plików danych.

Wielkość obszaru dzielonego określa parametr SHARED_POOL_SIZE.



  1   2   3   4   5   6   7   8


©operacji.org 2017
wyślij wiadomość

    Strona główna