(c) Politechnika Poznańska, Instytut Informatyki



Podobne dokumenty
Organizacja przestrzeni danych (2) Struktura bazy danych Oracle. Przestrzenie tabel. baza danych. tabel. tabel. struktury. (relacje, schematy,

startup pfile= '$HOME/admin/pfile/initDBx.ora'; create spfile from pfile= '$HOME/admin/pfile/initDBx.ora';

Zarządzanie wolną przestrzenią w bloku. Rozszerzenia

Zarządzanie strukturą bazy danych Oracle11g

Przyczyny awarii. Struktury wykorzystywane do odtwarzania bd. Archiwizowanie plików dziennika. Archiwizowanie danych. danych

Przygotowanie bazy do wykonywania kopii bezpieczeństwa

Przed modyfikacją buforów danych proces serwera zapisuje w buforze dziennika powtórzeń wszystkie zmiany dokonane w bazie danych.

Zadania do wykonania na laboratorium

Administracja bazy danych Oracle 10g

Archiwizacja i odtwarzanie bazy danych

System Oracle podstawowe czynności administracyjne

Administracja bazy danych Oracle 10g

Architektura Systemu Zarządzania Bazą Danych Oracle

(a) T (b) N (c) N (d) T

Konfiguracja bazy danych zwiększająca możliwość odtworzenia jej po awarii nośnika

(c) Politechnika Poznańska, Instytut Informatyki

Zakres wykładów (2) T orzenie, monitorowanie i usuwanie uż u ytkowników. ytkowników Kontrolowanie haseł Kontrolowanie hase i zasobów systemowych i

Wydajność hurtowni danych opartej o Oracle10g Database

PODSTAWY BAZ DANYCH. 7. Metody Implementacji Baz Danych. 2009/ Notatki do wykładu "Podstawy baz danych" 1

Odtwarzanie po awarii plików bazy danych

Wykonywanie kopii bezpieczeństwa w bazie Oracle 11g

Uprawnienia, role, synonimy

Administracja bazy danych Oracle 10g

Podstawy systemów UNIX Podstawy RMAN

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych

Strojenie,administracja itp. Cz. 2

Szkolenie obejmuje zagadnienia związane z tworzeniem i zarządzaniem bazą danych Oracle, jej zasobami i dostępem do danych.

Baza danych Oracle podstawowe pojęcia

Instalacja, architektura i struktura SZBD Oracle

Zarządzanie kontami użytkowników w i uprawnieniami

Strojenie,administracja itp

Ćwiczenie 2. Struktura bazy danych Oracle

PROCEDURA BACKUP & RECOVER Dokument opisuje procedurę backup u i odtwarzania dla bazy Oracle 11gR2

Administracja i programowanie pod Microsoft SQL Server 2000

Oracle ³atwiejszy ni przypuszczasz. Wydanie III

JSystems. Administracja Oracle. Kompendium wiedzy

Oracle Database 11g: podstawy administracji. Instalowanie serwera bazy danych

Ćwiczenie 2. Struktura bazy danych Oracle

EKSPLOATACJA BAZ DANYCH WSPÓŁCZESNE TECHNOLOGIE INFORMATYCZNE

ADMINISTRACJA BAZĄ DANYCH

Ćwiczenie 6. Zabezpieczenie bazy danych i odtwarzanie jej po awarii

Server Oracle - System Zarządzania Bazą Danych - składa się z instancji Oracle i bazy danych Oracle Instancja Oracle - pewne procesy drugoplanowe i

Plan ćwiczenia. Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych. UŜytkownicy i schematy (2) UŜytkownicy i schematy (1) baza danych: ZESP99

Block Change Tracking

Ćwiczenia praktyczne

1 Instalowanie i uaktualnianie serwera SQL Server

Zarządzanie obiektami bazy danych Oracle11g

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

Oracle 10g Real Application Clusters: konfiguracja i administrowanie

Cwiczenie 7. Retrospekcja

Ref. 7 - Język SQL - polecenia DDL i DML

Partycjonowanie tabel (1)

Wykład V. Indeksy. Struktura indeksu składa się z rekordów o dwóch polach

Administracja bazami danych

1.5.3 Do czego słuŝą tymczasowe przestrzenie Zarządzanie plikami danych

Ustawienie na poziomie sesji (działa do zmiany lub zakończenia sesji zamknięcia połączenia).

Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane.

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE

PODSTAWY BAZ DANYCH Wykład 6 4. Metody Implementacji Baz Danych

Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne.

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Tytuł kursu: Oracle 11g XE Administracja (kompleksowe)

Zaawansowane funkcje systemów plików. Ewa Przybyłowicz

Tabela wewnętrzna - definicja

Plan ćwiczenia. Rozdział 16 Uwierzytelnianie i autoryzacja w bazie danych. Użytkownicy i schematy (1) Użytkownicy i schematy (2) baza danych: ZESP99

ADMINISTRACJA BAZAMI DANYCH

Tworzenie tabeli przez select CREATE TABLE PRAC2 AS SELECT P.NAZWISKO, Z.NAZWA FROM PRAC P NATURAL JOIN ZESP Z

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach

System plików warstwa fizyczna

System plików warstwa fizyczna

System plików warstwa fizyczna

Język SQL, zajęcia nr 1

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku

Typy tabel serwera MySQL

SQL w języku PL/SQL. 2) Instrukcje języka definicji danych DDL DROP, CREATE, ALTER, GRANT, REVOKE

Spis treści. Przedmowa

SQL> startup pfile=./admin/pfile/initdbx.ora. SQL> create spfile from pfile='$home/admin/pfile/initdbx.ora' create user bolek identified by bolek;

Projektowanie systemów baz danych

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów

PODSTAWY BAZ DANYCH. 10. Partycjonowanie tabel i indeksów. 2009/ Notatki do wykładu "Podstawy baz danych"

Zarządzanie obiektami bazy danych Oracle11g

SQL Server. Odtwarzanie baz danych.

Przywracanie systemu. Do czego służy Przywracanie systemu?

1 Przetwarzanie transakcyjne Cechy transakcji Rozpoczęcie i zakończenie Punkty bezpieczeństwa... 3

System plików przykłady. implementacji

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

"Kilka słów" o strojeniu poleceń SQL w kontekście Hurtowni Danych wprowadzenie. Krzysztof Jankiewicz

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

Bazy danych - Materiały do laboratoriów VIII

wykład Organizacja plików Opracował: dr inż. Janusz DUDCZYK

1. ROLA ADMINISTRATORA

Systemy plików i zarządzanie pamięcią pomocniczą. Struktura pliku. Koncepcja pliku. Atrybuty pliku

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu:

SZKOLENIE: Administrator baz danych. Cel szkolenia

Sektor. Systemy Operacyjne

Windows Serwer 2008 R2. Moduł 8. Mechanizmy kopii zapasowych

Kopie bezpieczeństwa NAPRAWA BAZ DANYCH

Wykład 1 Cele i strategie archiwizacji i odtwarzania

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Transkrypt:

Struktura bazy danych Oracle (c) Politechnika Poznańska, Instytut Informatyki

28 Organizacja przestrzeni danych struktury logiczne - przestrzenie tabel (ang. tablespaces), schematy, obiekty (relacje, indeksy, klastry, klastry haszowe (ang. hash cluster), perspektywy, sekwencery, synonimy, moduły PL/SQL); struktury pośrednie - odzworowujące struktury logiczne w fizyczne; bloki, rozszerzenia (ang. extents), segmenty; struktury fizyczne - zależne od własności systemu operacyjnego (systemy plikowe, urządzenia surowe (ang. raw devices)), trzy kategorie struktur: pliki danych, dzienniki (ang. redo log), pliki kontrolne;

29 Organizacja przestrzeni danych (2) baza danych przestrzeń tabel system przestrzeń tabel dane plik 1 plik 2 plik 3

30 Przestrzenie tabel przeznaczenie: zarządzanie przestrzenią dyskową, określanie limitów zasobów dla użytkowników (ang. quota), zarządzanie dostępnością danych, stany: online i offline, wykonywanie częściowej kopii bezpieczeństwa (ang. backup) ) lub częściowego odtwarzanie (ang. recovery), przestrzeń tabel SYSTEM i SYSAUX przestrzenie niesystemowe: temporalne wycofania trwałe

31 Trwała przestrzeń tabel wykorzystywane składowania trwałych danych: tabel, indeksów, klastrów tabel, partycji tabel, zmaterializowanych perspektyw, obiektów LOB CREATE [PERMANENT] TABLESPACE nazwa DATAFILE 'plik' SIZE rozmiar [AUTOEXTEND ON [NEXT rozmiar] [MAXSIZE rozmiar]] [DEFAULT STORAGE (parametry składowania obiektów)] [BLOCKSIZE rozmiar [K]] [BIGFILE SMALLFILE] SIZE rozmiar [K M G T] create tablespace LAB_DANE datafile c: c:\lab\lab_dane01.dbf lab_dane01.dbf size 50M, datafile d:\lab\lab_dane02.dbf lab_dane02.dbf size 20M autoextend on next 10M maxsize 50M

32 Temporalna przestrzeń tabel wykorzystywana do sortowania i składowanie tabel tymczasowych nie może zawierać trwałych danych CREATE TEMPORARY TABLESPACE nazwa TEMPFILE 'plik' SIZE rozmiar [AUTOEXTEND ON [NEXT rozmiar] [MAXSIZE rozmiar]] [DEFAULT STORAGE (parametry składowania obiektów)] [BLOCKSIZE rozmiar [K]] [BIGFILE SMALLFILE] create temporary tablespace LAB_TEMP tempfile c: c:\lab\lab_temp.dbf lab_temp.dbf size 20M; zmiana typu TEMPORARY-PERMANENTPERMANENT alter tablespace LAB_TEMP permanent; alter tablespace LAB_TEMP temporary;

33 Manipulowanie przestrzeniami tabel dodanie pliku, zmiana domyślnego składowania ALTER TABLESPACE nazwa ADD DATAFILE 'plik' SIZE rozmiar [AUTOEXTEND ON [NEXT rozmiar] [MAXSIZE rozmiar]] [DEFAULT STORAGE (parametry składowania obiektów)] alter tablespace LAB_DANE add datafile c: c:\lab\lab_dane03.dbf lab_dane03.dbf size 50M autoextend on next 10M maxsize UNLIMITED;

Manipulowanie przestrzeniami tabel (2) 34 włączanie i wyłączanie przestrzeni tabel ALTER TABLESPACE nazwa ONLINE OFFLINE [NORMAL IMMEDIATE TEMPORARY] zmiana nazwy i lokalizacji pliku przestrzeń table musi być wyłączona plik docelowy musi istnieć ALTER TABLESPACE nazwa RENAME DATAFILE 'plik_żródłowy' TO 'plik_docelowy' alter tablespace LAB_DANE rename datafile c: c:\lab\lab_dane03.dbf lab_dane03.dbf to d:\baza\lab\lab_dane03.dbf ; lab_dane03.dbf ;

Manipulowanie przestrzeniami tabel (3) 35 zmiana typu READ WRITE -> READ ONLY przestrzeń tabel włączona (ONLINE) brak transakcji w przestrzeni tabel brak aktywnych segmentów wycofania w przestrzeni tabel przestrzeń nie podlega archiwizacji online alter tablespace LAB_DANE read only; alter tablespace LAB_DANE read write; usunięcie przestrzeni tabel DROP TABLESPACE nazwa [INCLUDING CONTENTS [AND DATAFILES] [CASCADE CONSTRAINTS]]

36 Struktury pośrednie segment 80 KB rozszerzenie 16 KB rozszerzenie 64KB bloki bazy danych

Segment 37 zbiór rozszerzeń przydzielonych pojedynczemu obiektowi typy segmentów danych tabeli, tabeli indeksowej, tabeli zagnieżdżonej, partycji tabeli, indeksu, partycji indeksu, klastra, LOB, indeksu LOB temporalny wycofania Rozszerzenie składa się z ciągłego obszaru bloków obszar ten musi się znajdować w jednym pliku

38 Zarządzanie rozszerzeniami segmentów Lokalne - automatyczne Przez słownik bd - ręczne UET$ FET$ Lokalne zarządzanie jest sterowane bitmapami w plikach danych (domyślne od 9.2) Zarządzanie przez słownik danych Jest sterowane tabelami UET$ i FET$ (domyślne dla przestrzeni Tabel SYSTEM)

39 Automatyczne zarządzanie rozszerzeniami segmentów Wygodne w użyciu Lepsze wykorzystanie przestrzeni dyskowej, w szczególności gdy rozmiary wierszy w poszczególnych tabelach istotnie się różnią Lepsza wydajność przy współbieżnym dostępie CREATE TABLESPACE nazwa... EXTENT MANAGEMENT LOCAL [AUTOALLOCATE UNIFORM rozmiar] Umieszczenie segmentu w przestrzeni tabel CREATE TABLE tabela... TABLESPACE nazwa;

40 Blok bazy danych najmniejsza jednostka alokacji przestrzeni dyskowej odpowiada określonej liczbie bajtów jest wielokrotnością rozmiaru bloku SO rozmiar określony parametrem konfiguracyjnym DB_BLOCK_SIZE, lub podczas tworzenia przestrzeni tabel nagłówek Struktura bloku wolna przestrzeń dane nagłówek zawiera m.in. informacje na temat: segmentu, w skład którego wchodzi blok transakcji operujących na danych bloku katalog tabel adresy rekordów

41 Zarządzanie wolnymi blokami w obiekcie Automatyczne (zalecane) Ręczne Bloki bitmapowe (sterują dostępem do wolnych bloków) Bloki danych w automatycznie zarządzanym obiekcie Blok nagłówkowy (zawiera wskaźniki do pierwszych bloków list wolnych bloków) Bloki danych w każdym zbiorze wolnych bloków

42 Automatyczne zarządzanie wolnymi blokami 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 blok niesformatowany bloki sterujące zawierające bitmapy są przechowywane w postaci B-drzewa 0% 25% 50% 75% 100% przestrzeń zajęta przestrzeń wolna CREATE TABLESPACE... EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

43 Ręczne zarządzanie wolnymi blokami nagłówek nagłówek wolna przestrzeń 30% INSERT, UPDATE wolna przestrzeń 30% dane 70% PCTFREE = 30 dane 70% PCTUSED = 50 nagłówek nagłówek DELETE wolna przestrzeń 30% wolna przestrzeń 30% 70% 70% dane 50% dane 50%

44 Ręczne zarządzanie wolnymi blokami(2) Blok poza listą wolnych bloków PCTUSED=40% PCTFREE=10% Blok na liście wolnych bloków 100-PCTFREE=90% 0% PCTUSED=40% 100% CREATE TABLESPACE przestrzeń_tabel_z_ręcznie_zarządz_blokami EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT MANUAL; CREATE TABLE nazwa_tabeli... PCTFREE integer PCTUSED integer TABLESPACE przestrzeń_tabel_z_ręcznie_zarządz_blokami

Perspektywy słownika danych udostępniające informacje nt. rozszerzeń i segmentów DBA_EXTENTS SEGMENT_NAME TABLESPACE_NAME FILE_ID BLOCKS DBA_SEGMENTS SEGMENT_NAME SEGMENT_TYPE TABLESPACE_NAME EXTENTS BLOCKS DBA_FREE_SPACE TABLESPACE_NAME BLOCKS INITIAL_EXTENT, NEXT_EXTENT, MIN_EXTENTS, MAX_EXTENTS, PCT_INCREASE 45

Perspektywy słownika danych udostępniające informacje nt. rozszerzeń i segmentów (2) 46 wyświetlenie wolnej przestrzeni we wszystkich przestrzeniach tabel select tablespace_name, sum(bytes)/1024 free kb from dba_free_space group by tablespace_name; wyświetlenie zajętej przestrzeni we wszystkich przestrzeniach tabel select tablespace_name, sum(bytes)/1024 used kb from dba_extents group by tablespace_name;

Perspektywy słownika danych udostępniające informacje nt. przestrzeni tabel i ich plików DBA_TABLESPACES TABLESPACE_NAME NEXT_EXTENT MAX_EXTENTS PCT_INCREASE STATUS (ONLINE, OFFLINE READ ONLY) CONTENT (PERMANENT, TEMPORARY) DBA_DATA_FILES FILE_NAME TABLESPACE_NAME BYTES AUTOEXTENSIBLE MAXBYTES INCREMENT_BY 47

48 pliki danych Pliki bazy danych obiekty bazy danych i dane opisy użytkowników opisy przestrzeni tabel pliki dziennika powtórzeń rejestracja zatwierdzonych i niezatwierdzonych zmian w bazie danych pliki kontrolne opis fizycznej struktury bazy danych informacje wykorzystywane do odtwarzania plik parametrów parametry definiujące własności i sposób pracy bd plik haseł

49 Dziennik powtórzeń rejestruje zmiany w bazie danych zawartość zapisywana w plikach rodzaje dziennika bieżący (online) zarchiwizowany (offline, archived) zapisywanie plików dziennika - proces LGWR cyklicznie archiwizowanie plików dziennika - proces ARCH

50 tryby pracy dziennika Dziennik powtórzeń (2) bez archiwizacji (NOARCHIVELOG) z archiwizacją (ARCHIVELOG) a) b) LGWR LGWR 1 2 1 2 log1.ora 3 log2.ora log2.ora log1.ora 3 4 5 ARCH arch01.arc arch02.arc arch03.arc

51 Dziennik powtórzeń (3) LGWR zapisuje informacje do bieżącego pliku dziennika gdy: następuje zatwierdzenie transakcji bufor ten jest w jednej trzeciej zapełniony upłyną trzy sekundy od ostatniego zapisu zostaje zgłoszony punkt kontrolny zanim DBWR dokona jakiegokolwiek zapisu na dysk zawartości bufora danych przełączenie pliku dziennika po zapełnieniu się bieżącego pliku dziennika - automatycznie manualnie alter system switch logfile;

Grupy plików dziennika powtórzeń 52 zwiększenie niezawodności równoległe zapisywanie do wszystkich plików grupy dysk C dysk D grupa 1 log1.ora 1 1 log1.ora grupa 2 log2.ora 2 2 LGWR log2.ora 3 3 grupa 3 log3.ora log3.ora

53 Grupy plików dziennika powtórzeń (2) tworzenie - w czasie tworzenia bazy danych create database LAB datafile 'C:\lab\system01.dbf' size 20M logfile group 1 ('C:\lab\log1.ora', log1.ora', 'D:\lab lab\log1.ora') log1.ora') size 100K, group 2 ('C:\lab lab\log2.ora', log2.ora', 'D:\lab lab\log2.ora') log2.ora') size 100K, group 3 ('C:\lab\log3.ora', log3.ora', 'D:\lab lab\log3.ora') log3.ora') size 100K character set EE8MSWIN1250;

54 Modyfikowanie grup plików dziennika powtórzeń alter database add logfile group nr_grupy ('log1.ora', ora', 'log2.ora', ora',..., 'logn.ora') ora') size rozmiar; alter database add logfile group 4 ('c:\oracle\log4.ora', ora', 'd:\oracle oracle\log log4.ora') ora') size 100k; alter database add logfile member 'logn.ora' ora' to group nr_grupy; alter database drop logfile member 'logn.ora' ora'; alter database drop logfile group nr_grupy;

55 zawiera: nazwę bazy danych Plik kontrolny datę utworzenia bazy danych informacje o wszystkich grupach dziennika powtórzeń wraz ze wskazaniem bieżącej grupy nazwę, lokalizację i rozmiar każdego pliku dziennika powtórzeń numer sekwencyjny aktualnego (current) pliku dziennika powtórzeń nazwę, lokalizację, rozmiar i status (tylko do odczytu, do odczytu i zapisu, włączony, wyłączony, wymagający odtworzenia) każdego pliku danych informacje dotyczące punktu kontrolnego

56 Plik kontrolny (2) niezbędny do zamontowania i otwarcia bazy danych stosować wiele aktywnych kopii plików kontrolnych dla jednej bazy danych, umieszczonych na różnych dyskach informacje o nazwach i położeniu plików kontrolnych -> wartość parametru konfiguracyjnego CONTROL_FILES np. CONTROL_FILES = (C:\lab\ctl1LAB.ora, D:\lab lab\ctl2lab.ora) wszystkie pliki kontrolne są jednocześnie na bieżąco zapisywane w trakcie pracy bazy danych zawartość plików kontrolnych jest uaktualniana m.in. gdy: administrator dodaje, zmienia nazwę lub usuwa plik przestrzeni tabel lub plik dziennika powtórzeń; wystąpił punkt kontrolny; nastąpiło przełączenie plików dziennika powtórzeń.

57 Plik konfiguracyjny zawiera parametry konfiguracyjne instancji bazy danych tekstowy - po stronie klienta sqlplus, nazwa: init<sid>.ora binarny - po stronie serwera spfile<sid>.ora położenie $ORACLE_HOME/dbs %ORACLE_HOME\database db_name = LAB db_files = 20 control_files = (C: C:\lab\ctl1LAB.ora, D:\lab\ctl2LAB.ora ) compatible = 8.0.5 db_block_size = 2048 db_file_multiblock_read_count = 8 db_block_buffers = 200 shared_pool_size = 3500000 log_checkpoint_interval = 10000 processes = 50 open_cursors = 100 dml_locks = 100 log_buffer = 8192 max_dump_file_size = 10240 remote_login_passwordfile = NONE background_dump_dest = D:\bdump user_dump_dest = D:\udump

58 Zarządzanie plikiem spfile Tworzenie spfile z init CREATE SPFILE [=plik_spfile] FROM PFILE [=plik_init] Tworzenie init z spfile CREATE PFILE [=plik_init] FROM SPFILE [plik_spfile] Zmiana wartości parametrów w spfile ALTER SYSTEM SET parametr = wartość [SCOPE = {SPFILE MEMORY BOTH}

Plik haseł 59 umożliwia autoryzację dostępu do bazy danych dla użytkowników z uprawnieniami administratora zawiera hasło użytkownika SYS w roli SYSDBA -> jeśli parametr kofiguracyjny REMOTE_LOGIN_PASSWORDFILE=SHARED zawiera hasło użytkownika SYS i innych użytkowników posiadających rolę SYSDBA i/lub SYSOPER -> jeśli parametr kofiguracyjny REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE Tworzenie - program orapwd, oradim