250 likes | 401 Views
Zsbd Administracja serwerem oracle. Wykład 2 Prowadzący: dr Paweł Drozda. Program wykładu. Zarządzanie przestrzeniami tabel wycofania Ustawienia audytu bazy danych Konserwacja bazy danych Monitorowanie wydajności Odzyskiwanie bazy danych i Backup-y. Język DML. Główne komendy DML:
E N D
ZsbdAdministracja serwerem oracle Wykład 2 Prowadzący: dr Paweł Drozda
Program wykładu • Zarządzanie przestrzeniami tabel wycofania • Ustawienia audytu bazy danych • Konserwacja bazy danych • Monitorowanie wydajności • Odzyskiwanie bazy danych i Backup-y dr P. Drozda
Język DML • Główne komendy DML: • INSERT • UPDATE • DELETE • MERGE – z dwóch tabel tworzy jedną • Każda komenda jako część transakcji • Koniec transakcji COMMIT lub ROLLBACK dr P. Drozda
Przykład MERGE • MERGE INTO EMP a USING (SELECT * FROM employees) b ON a.emp_no = b.employee_id WHEN MATCHED THEN UPDATE SET a.salary = b.salary WHEN NOT MATCHED THEN INSETR (emp_no, last_name, first_name, dept_no, hire_date, salary ) VALUES (employee_id, last_name, first_name, department_id, hire_date, salary); dr P. Drozda
Dane wycofania • Kopia danych przed modyfikacją • Dodawane dla każdej transakcji, która zmienia dane • Utrzymywanie co najmniej do końca przeprowadzania transakcji • Główne cele danych wycofania: • Wycofywanie transakcji • Odzyskiwanie danych z awarii transakcji • Odtworzenie zapytań, tabel, transakcji • Informacje na temat aktywnych transakcji – V$TRANSACTION • Dane przechowywane w przestrzeni wycofań dr P. Drozda
Zarządzanie przestrzeniami wycofań • Wbudowany automatyczny mechanizm • Ścieżka dostępu EM Server/DatabaseConfig./AutomaticUndoManag. • UNDO_RETENTION – czas po zakończeniu transakcji, po którym usuwane są dane z przestrzeni tabel • RETENTION GUARANTEE – zapewnia zachowanie danych przez określony czas (nawet kosztem niezatwierdzonych transakcji) – parametr przestrzeni tabel • UndoAdvisor – określa wielkość przestrzeni wycofań odpowiednią dla żądanego czasu zachowania danych dr P. Drozda
Audyt (monitoring) bazy danych • Oznacza zbieranie i gromadzenie informacji na temat działań w systemie – może obniżać wydajność systemu • Typy audytu: • Obligatoryjny (np. logowanie Adminów) • Standardowy – wybór opcji i przywilejów które mają być monitorowane (ustawiaony za pomocą AUDIT_TRIAL) • Bazujący na wartościach – związany z przekazywanymi wartościami z insert, update, delete; zaimplementowany za pomocą wyzwalaczy • Drobnoziarnisty – gromadzi komendy SQL dr P. Drozda
Jak ustawiać Audyt • Audyt SQL • AUDIT table; • Audyt przywilejów systemowych • AUDIT create any table, create any trigger; • AUDIT create any table by HR • Audyt przywilejów obiektowych • AUDIT ALL ON hr.employees; • AUDIT UPDATE, DELETE on hr.employees; • Dostęp EM – server/security/audit_settings dr P. Drozda
Elementy konserwacji bazy danych • Oracle Optimizer – determinuje najbardziej efektywny plan wykonania polecenia SQL • Automatic WorkloadRepository (AWR) – zbiera statystyki, analizuje i rekomenduje rozwiązania • Automatic DatabaseDiagnostic Monitor (ADDM) – uruchomiany po AWR, wykrywa ‘wąskie gardła’ i przedstawia rekomendacje do rozwiązania problemu • „Doradcy” Oracla • Ustawienia progów ostrzeżeń dr P. Drozda
Oracle optimizer (1) • Do poprawnego działania konieczne gromadzenie statystyk tabel, indeksów takich jak: • Wielkość tabeli/indeksu • Liczba wierszy • Średnia wielkość wiersza (tabela) • Zapewnione automatyczne zbieranie statystyk (raz dziennie) • Możliwość zarządzania statystykami pod EM – server/QueryOptimizer dr P. Drozda
Oracle optimizer (2) • Dostępne opcje • Zbieranie statystyk (np. dotyczących tabel, bazy danych, schematu użytkownika) • Odtwarzanie statystyk z jakiegoś momentu z przeszłości • Blokowanie statystyk • Odblokowanie • Usuwanie dr P. Drozda
AWR • Zawiera informacje o wydajności • Zbiera informacje co godzinę (z SGA) i przetrzymuje je przez 8 dni • Tabele z informacjami gromadzone są w przestrzeni tabel SYSAUX oraz schemacie SYSMAN • AWR w EM – server/statistic management • Ustawienia • Czas przetrzymywania informacji • Częstość zbierania informacji • Dokładność zbieranych informacji dr P. Drozda
ADDM • Uruchomiany zawsze po działaniu AWR • Przedstawia rekomendacje rozwiązania problemu również z ilościowym określeniem korzyści • Popularne problemy: • Zbyt duże wykorzystanie procesora • Przekraczanie wielkości bazy danych • Długi czas wykonywania SQL, PL/SQL, Java • Rezultaty analiz przechowywane w AWR dr P. Drozda
ADDM – rodzaje rekomendacji • Zmiana parametrów inicjacyjnych • Zmiana hardware • Zmiana schematu bazy danych (rodzaj indeksowania, położenie tabel itd.) • Propozycja zastosowania innych ‘doradców’ dr P. Drozda
Inni doradcy • Pamięci – wspomaga określanie ilości miejsca dla różnych elementów • Segmentów – znajduje elementy które zajmują więcej miejsca niż potrzeba • SQL – analizuje wszystkie polecenia SQL – rekomenduje nowe indeksy oraz perspektywy • SQL Tuning – szuka możliwości przyspieszenia wykonania pojedynczej instrukcji SQL • Zarządzanie przestrzeniami wycofań • Naprawa SQL – po nieudanym zapytaniu – pomaga odnaleźć błąd • Centrala doradców – relatedlinks dr P. Drozda
Ustawianie progów ostrzeżeń • Standardowo monitorowanych jest około 60 miar na potrzeby ostrzeżeń • EM – Related Links/Metric and Policy settings • Ustawiane dwie wartości: • Ostrzeżenie • Wyjątek krytyczny dr P. Drozda
Monitorowanie wydajności • EM – performance • obrazuje wykorzystanie procesora oraz elementy wpływające na to • Throughput – określa wydajność bazy (liczba danych na sekundę bądź transakcje) • Top consumers – określa jakie usługi, serwisy, klienci wykorzystują najwięcej zasobów dr P. Drozda
Zarządzanie przydzieloną pamięcią • AMM (automatic memory management) • EM – server/ databaseConfiguration • AMM przydziela optymalnie pamięć pomiędzy SGA i PGA • ASMM (automatic shared memory management) – zarządza pamięcią SGA – zmienia całkowitą wielkość SGA dr P. Drozda
Odzyskiwanie danych • Zmiany zapisywane w plikach Redo Log używając LogWriter • Writer pisze gdy: • Zatwierdzona transakcja • Zapełniony w 1/3 • Co 3 sekundy SGA LogWriter Redo Log Files dr P. Drozda
Automatyczne odzyskiwanie danych • Gdy dane podczas zamykania instancji źle zapisane • Uruchomiane podczas włączenia bazy danych • Dwie możliwe operacje: • Rolling forward – dane wracają do stanu przed awarią • Rolling back – niezatwierdzone zmiany wracają do stanu przed zmianami dr P. Drozda
Odzyskiwanie – ustawienia • Planowanie regularnych backup-ów • Tworzenie wielu plików kontroli • Tworzenie wielu grup redo log • Archiwizacja kopii redo log • Zalecane tworzenie co najmniej dwóch plików w każdej grupie redo na różnych dyskach (każdy plik zawiera to samo) • Edycja : EM/Server/Storage/Redo log groups dr P. Drozda
ARCHIVELOG mode • EM\Avability\Setup\recoverySettings • Dotyczy sposobu archiwizacji zmian bazy danych • Gdy NOARCHIVELOG • możliwość odzyskania bazy od ostatniego backup-u • Transakcje po backup-ie są tracone • ARCHIVELOG • Zapisuje informacje o wszystkich transakcjach (można ustawić wiele plików do zapisywania) dr P. Drozda
Backup • Strategia backup-u: • Cała baza danych • Tylko wybrane elementy • Typ backup-u: • Wszystkie bloki danych • Tylko informacje o zmianach od wcześniejszych backup-ów • Kumulatywny – wszystkie zmiany od pierwszego backup-u • Różnicowy – tylko zmiany od ostatniego backup-u • Sposób backupu • Online • Offline dr P. Drozda
Recovery Manager – obsługa backup-ów • EM/availability/Backup Settings • Możliwość ustawienia: • Paralelizm – ile oddzielnych strumieni ma zostać stworzonych • Policy – Ustawiane parametry • Automatyczny backup plików parametrów przy każdym backupie • Pliki które nie zmieniły się mogą nie być backup-owane • Wyłączenie przestrzeni tabel z backup-u • Ile dni ma być przetrzymywany backup dr P. Drozda
Planowanie backup-ów • EM/Availability/Manage/Schedule Backup • Wybór strategii, sposobu, typu • Wybór czasu, częstotliwości • Możliwość automatycznego backup-u • Dodatkowe narzędzia: • Backup report • Manage current backup dr P. Drozda