260 likes | 500 Views
Administracja serwerem bazy danych Oracle 11g Instancja i dostęp do bazy danych Wykład nr 1 . Michał Szkopiński. Struktura przedmiotu. 12 godzin wykładów 6 spotkań x 2 godziny 26 godzin ćwiczeń 13 laboratoriów x 2 godziny (12 x 2 godz)
E N D
Administracja serwerem bazy danych Oracle 11gInstancja i dostęp do bazy danychWykład nr 1 Michał Szkopiński
Struktura przedmiotu • 12 godzin wykładów • 6 spotkań x 2 godziny • 26 godzin ćwiczeń • 13 laboratoriów x 2 godziny (12 x 2 godz) • W trakcie laboratoriów wykonywanie typowych zadań administracyjnych na dostarczonej maszynie wirtualnej • Możliwość wykonywania dodatkowych zadań domowych • Test końcowy • Na ostatnim zjeździe w trakcie ostatniej tury laboratoriów
Agenda przedmiotu • Wykład 1 • Zapoznanie się ze środowiskiem maszyny wirtualnej • System operacyjny Linux • Omówienie struktury bazy danych Oracle oraz wykonanie podstawowych operacji • Wykład 2 • Zarządzanie strukturą bazy danych (przestrzenie tabel, pliki segmenty extenty i bloki danych) • Wykład 3 • Zarządzanie użytkownikami i bezpieczeństwem danych • Wykład 4 • Zarządzanie obiektami bazy danych (tabele, widoki, indeksy, sekwencje, itp)
Agenda przedmiotu cd. • Wykład 5 • Wykonywanie kopii zapasowych i odtwarzanie • Wykład 6 • Monitorowanie i poprawianie wydajności bazy danych • Instalowanie aktualizacji
Kilka słów o prowadzącym ... • Michał Szkopiński • michal.szkopinski@gmail.com • Pracownik Oracle Polska od 11 lat • Tester, • Programista, • Administrator Oracle, • Konsultant wdrożeniowy • Architekt rozwiązań Oracle Fusion Middleware • Wykładowca WSISiZ w Warszawie • Zainteresowania • Nurkowanie, narty, wspinaczka, podróże
Podstawowe zadania administracyjne • Instalowanie oprogramowania bazy danych na dostępnym sprzęcie • Tworzenie instancji bazy danych • Zamykanie i otwieranie bazy danych. Dostęp przez sieć, zmiany parametrów startowych • Zarządzanie strukturą bazy • Zarządzanie użytkownikami i bezpieczeństwem • Wykonywanie kopii zapasowych i odtwarzanie po awarii • Monitorowanie wydajności i jej poprawa • Instalowanie aktualizacji
Narzędzia administracyjne • Oracle Universal Installer (OUI) – instalowanie oprogramowania Oracle • Oracle Database Configuration Assistance – tworzenie instancji bazy z szablonów lub od zera • SQL PLUS (sqlplus) – konsola z wierszem poleceń • Enterprise Manager (emctl) – graficzne narzędzie administracyjne • Recovery Manager (rman) – tworzenie kopii i odtwarzanie • LISTENER (lsnrctl) – bramka sieciowa do połączeń zdalnych
Elementy składowe bazy Oracle (1) • Pliki • Data files – pliki z danymi • Control files – przechowuje fizyczną strukturę bazy (gdzie są inne pliki potrzebne do uruchomienia instancji) • Redo log files – pliki przechowujące zmiany w danych • Archive log files – archiwalne redo logi • PFILE & SPFILE – pliki z parametrami inicjalizującymi instancję bazy
Elementy składowe bazy Oracle (2) • Procesy • SMON – System monitor – odtwarza bazę danych po awarii instancji • PMON – Process monitor – sprząta po awari procesu użytkownika • DBW – database writer – zapisuje zmienione bloki danych z pamięci w plikach na dysku (data files) • LGWR – log writer – zapisuje zmiany w plikach redo logów • CKPT – checkpoint – informuje o potrzebie zrzucenia wszystkich zmian z pamięci do plików na dyskach (data files, redo logs) • ARC – archiver – kopiuje wypełnione redo logi do innej lokalizacji
Elementy składowe bazy Oracle (3) • Pamięć • SGA – System Global Area – wspólny obszar pamięci dla całej instancji bazy • Shared Pool – bufor na polecenia SQL wpółdzielone między użytkownikami • Database buffer cache – bufor bloków danych pobranych z plików • Redo log buffer – bufor redo logów • Java Pool – do uruchamiania kodu Java • Large Pool • PGA – Program Global Area – procesy serwera obsługujące sesje użytwkoników
Elementy składowe bazy Oracle Instance Others SMON PMON RECO SGA Shared pool Databasebuffercache Redo logbuffer Library cache Data dictionarycache PGA Serverprocess DBWn CKPT LGWR ARCn Database Userprocess Archived log files Control files Redolog files Data files
Wykonanie operacji SELECT w bazie Shared pool Databasebuffercache Library cache Result cache Data dictionarycache Serverprocess Jest w Result cache Nie ma w Result cache, pobieram z dysku Selectsalary Fromemployees 5500 Userprocess Data files
Wykonanie transakcji w bazieUpdate/Insert Databasebuffercache New=7000 Undo=5500 Shared pool Redo logbuffer New=7000 Undo=5500 Serverprocess Synchronicznie z operacją Commit LGWR DBWn Updateemployees Setsalary=7000 Asynchronicznie Commit complete Userprocess Redolog files Commit Data files
Zarządzanie pamięcią • Manualne • Samodzielnie określamy parametry poszczególnych buforów • Należy ustawić • SGA_MAX_SIZE = nM • MEMORY_TARGET=0 • Automatyczne • Serwer bazy samodzielnie będzie zarządzał przydziałem pamięci dla poszczególnych buforów w SGA i PGA • Należy ustawić • MEMORY_TARGET= nM • MEMORY_MAX_TARGET = nM
Sprawdzanie parametrów pamięci • Za pomocą sqlplus: • Polecenie „show parameter” • memory_target • sga_max_size • pool – pokaże wszystkie parametry zawierające w nazwie „pool” np: java_pool_size, shared_pool_size itp. • Poleceniem SELECT z widoku • V$SGA • V$SGASTAT • V$PGASTAT • V$MEMORY_DYNAMIC_COMPONENTS
Uruchamianie instancji bazy • Bazę uruchamia się w 3 etapach • NOMOUNT, MOUNT, OPEN • NOMOUNT • Tworzy obszar SGA wraz z poszczególnymi buforami i procesami serwera • Czytany jest plik inicjalizacyjny PFILE lub SPFILE • MOUNT • Czytany jest plik kontrolny CONTROL FILE • Sprawdzana jest spójność plików bazy danych • W tym trybie można odzyskiwać bazę po awarii • OPEN • Otwierane są wszystkie pozostałe pliki danych oraz redo logi • Baza gotowa jest do użycia
Polecenia do uruchamiania bazy • Normalne uruchomienie bazy danych • startup • Uruchomienie w trybie nomount (tylko przydzielenie pamięci wraz z procesami instancji) • startup nomount • Uruchomienie w trybie MOUNT • startup mount • Zmiana trybu pracy instancji bazy • alter database mount[open]
Zamykanie bazy danych • Bazę danych można zamknąć na 4 sposoby • shutdown normal • Czeka aż wszyscy użytkownicy rozłączą się • shutdown transactional • Czeka na zakończenie wszystkich transakcji • shutdown immediate • Kończy natychmiast wszystkie transakcje poprzez Rollback • shutdown abort • Natychmiast kończy pracę wszystkich procesów instancji • Ponowne uruchomienie wymaga odtworzenia (operacja automatyczna)
Nasłuch sieciowy – Oracle Listener • Listener to proces który zarządza połączeniami sieciowymi z instancją bazy Listenerport 1521 Aplikacja Oracle Net RDBMS Oracle Net Sieć TCP/IP Klient Server Bazy danych
Zarządzanie Listener-em • Do zarządzania Listener-em służy polecenie • lsnrctl • Uruchomienie • lsnrctl start • Zatrzymanie • lsnrctl stop • Sprawdzenie statusu • lsnrctl status
Konfiguracja połączeń sieciowych (1) • Po stronie SERWERA bazy danych konfiguruje się proces LISTENER-a w pliku • $ORACLE_HOME/network/admin/listener.ora LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = oracle1.localdomain) (PORT = 1521))))
Konfiguracja połączeń sieciowych (2) • Po stronie KLIENTA konfiguracja przechowywana jest w pliku • $ORACLE_HOME/network/admin/tnsnames.ora ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = oracle1.localdomain) (PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) )
Podłączenie się do bazy danych • Do celów administracyjnych używany będzie najczęściej SQL PLUS: • Podłączenie lokalne na serwerze bazy danych (bez użycia LISTENER-a) • sqlplus user1/pass1 • Podłączenie zdalne przez sieć • sqlplus user1/pass1@orcl • Podłączenie jako administrator - SYS • sqlplus sys assysdba • Podłączenie lokalne więc hasło nie jest wymagane • sqlplus sys@orclas sysdba • Podłączenie sieciowe więc hasło jest wymagane
Połączenia sieciowe – jak to działa SQLPLUSala/haslo@baza Rozwiązywanie nazyw baza = (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=myhost.oracle.com)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=orcl))) LISTENER port 1521 orcl myhost.oracle.com
Dziękuję za uwagę i zapraszam na ćwiczenia