Administracja serwerem bazy danych Oracle 11g Instancja i dostęp do bazy danych Wykład nr 1
description
Transcript of Administracja serwerem bazy danych Oracle 11g Instancja i dostęp do bazy danych Wykład nr 1
<Insert Picture Here>
Administracja serwerem bazy danych Oracle 11gInstancja 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)
• 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• [email protected]
• 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
Oracle Database 11g
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
DatabaseData files
Redo log files
Control files
Databasebuffercache
Shared pool
Data dictionarycache
Librarycache
PMONSMON Others
Serverprocess
PGA
Archived log filesUser
process
Instance
RECO
ARCn
SGA
DBWn
Redo logbuffer
LGWRCKPT
Wykonanie operacji SELECT w bazie
Serverprocess
Userprocess
Shared pool
Data dictionarycache
Librarycache
Resultcache
Databasebuffercache
Data files
Select salary From employees 5500
Jest w Result cacheNie ma w Result cache, pobieram z dysku
Wykonanie transakcji w bazieUpdate/Insert
Shared pool
Serverprocess
Userprocess
Databasebuffer cacheNew=7000Undo=5500
Data files
Update employees Set salary=7000
Redo log files
Redo logbuffer
New=7000Undo=5500
DBWn LGWR
Commit
Commit complete
AsynchronicznieSynchronicznie z operacją Commit
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
Aplikacja
Oracle Net
RDBMS
Oracle Net
Klient Server Bazy danych
Sieć TCP/IP
Listenerport 1521
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 as sysdba
• Podłączenie lokalne więc hasło nie jest wymagane• sqlplus sys@orcl as sysdba
• Podłączenie sieciowe więc hasło jest wymagane
Połączenia sieciowe – jak to działa
myhost.oracle.com
SQLPLUS ala/haslo@baza
baza =(DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=myhost.oracle.com)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=orcl)))
LISTENER port 1521
Rozwiązywanie nazyw
orcl
Dziękuję za uwagę i zapraszam na ćwiczenia