Baza danych a instancja
Oracle to RDBMS (obiektowo-relacyjny system zarządzania bazą danych), który jest szeroko stosowany w przedsiębiorstwach. Jest rozwijany przez Oracle Corporation. System Oracle składa się z co najmniej jednej instancji i bazy danych. Instancja to zbiór procesów komunikujących się z przechowywaniem danych. Baza danych to rzeczywista pamięć masowa, w której przechowywana jest kolekcja plików. Jednak termin baza danych Oracle jest używany w odniesieniu do całego systemu bazy danych Oracle (instancji i baz danych). Z tego powodu dla początkujących zawsze występuje pewne zamieszanie między bazą danych terminów a instancją.
Co to jest instancja?
Instancja to zbiór procesów uruchomionych na systemie operacyjnym i powiązanej pamięci, która współdziała z pamięcią danych. Instancja jest interfejsem między użytkownikiem a bazą danych. Procesy zdolne do komunikowania się z klientem i uzyskiwania dostępu do bazy danych są dostarczane przez instancję. Procesy te są procesami działającymi w tle i nie wystarczają do utrzymania w bazie danych zasady ACID (Atomowość, Spójność, Izolacja i Trwałość). Tak więc instancja korzysta również z kilku innych składników, takich jak pamięć podręczna i bufory. Mówiąc dokładniej, instancja składa się z trzech części. Są to SGA (System Global Area), PGA (Program Global Area) i procesy w tle. SGA to tymczasowa struktura pamięci współużytkowanej, która ma żywotność od uruchomienia instancji do jej zamknięcia.
Baza danych
Baza danych Oracle odnosi się do faktycznego przechowywania Oracle RDBMS. Składa się z trzech głównych elementów. Są to pliki kontrolne, pliki powtórzeń i pliki danych. Opcjonalnie mogą istnieć pliki haseł w bazie danych. Pliki kontrolne śledzą wszystkie pliki danych i powtarzają pliki. Pomaga także zachować nienaruszoną integralność bazy danych, śledząc numer zmiany systemu (SCN), znaczniki czasu i inne krytyczne informacje, takie jak informacje o kopii zapasowej / odzyskiwaniu. Pliki danych przechowują rzeczywiste dane. W momencie tworzenia bazy danych tworzone są co najmniej dwa pliki danych. Te pliki są fizycznie widziane przez DBA (administrator bazy danych). Operacje na plikach, takie jak zmiana nazwy, zmiana rozmiaru, dodawanie, przenoszenie lub upuszczanie, mogą być wykonywane na plikach danych. Ponów pliki dziennika (znane również jako dzienniki ponawiania online), przechowuj informacje dotyczące zmian w bazie danych wraz z informacjami chronologicznymi. Informacje te są potrzebne na wypadek, gdyby użytkownik musiał wykonać wszystkie lub niektóre modyfikacje bazy danych. Aby instancja mogła manipulować danymi w bazie danych, powinna ją najpierw otworzyć. Instancja może otworzyć tylko jedną bazę danych. Bazę danych można jednak otworzyć za pomocą wielu instancji.
Jaka jest różnica między bazą danych a instancją?
Pojęcia instancja i baza danych w Oracle RDBMS są ściśle powiązane, ale odnoszą się do dwóch różnych komponentów w systemie. Baza danych odnosi się do faktycznego przechowywania RDBMS, podczas gdy Instancja to zbiór procesów działających na systemie operacyjnym i powiązanej pamięci, która współdziała z pamięcią danych. Instancja musi otworzyć bazę danych przed manipulowaniem danymi. Wiele instancji może otworzyć jedną bazę danych, ale instancja nie może otworzyć wielu baz danych.