autor: Damir Korbar, dipl.ing. urednica: Ana Rutar, prof. naslov: Administriranje baza podataka stručni recezent: mr.sc. Goran Đambić lektorica: Dijana Stilinović, prof. grafički urednik: Krešimir Pletikosa, ACE nakladnik: Algebra d.o.o., 2010. za nakladnika: mr.sc. Mislav Balković mjesto i godina izdavanja: Zagreb, 2010 Sva prava pridržana. Niti jedan dio ove knjige ne smije se reproducirati ili prenositi u bilo kojem obliku, niti na koji način. Zabranjeno je svako kopiranje, citiranje te upotreba knjige u javnim i privatnim edukacijskim organizacijama u svrhu organiziranih školovanja, a bez pisanog odobrenja nositelja autorskih prava. Copyright © Algebra d.o.o. CIP zapis dostupan u računalnom katalogu Nacionalne i sveučilišne knjižnice u Zagrebu pod brojem 742481 ISBN 978-953-322-019-2 Sadržaj: 1. Poglavlje: ...... Uvod u administriranje baza podataka .................................................................................................................. 5 1.1 Administracija baza kao informatička disciplina ................................................................................................................... 6 1.2 Administracija baze kroz životni ciklus aplikacije ................................................................................................................. 6 1.3 Administracija podataka, baza i sistema .............................................................................................................................. 7 1.3.1 Administracija podataka .................................................................................................................................................. 7 1.3.2 Administracija baza u užem smislu ................................................................................................................................. 9 1.3.3 Administracija sistema .................................................................................................................................................. 10 1.4 Zadaci u administriranju baza podataka ............................................................................................................................ 10 1.4.1 Dizajniranje baze........................................................................................................................................................... 10 1.4.2 Nadgledanje i ugađanje performansi ............................................................................................................................ 11 1.4.3 Briga o dostupnosti ....................................................................................................................................................... 11 1.4.4 Briga o sigurnosti .......................................................................................................................................................... 11 1.4.5 Izrada sigurnosnih kopija i oporavak baza .................................................................................................................... 12 1.4.6 Osiguranje integriteta podataka .................................................................................................................................... 13 1.4.7 Nadogradnja DBMS-a ................................................................................................................................................... 13 1.5 Tipovi administratora baza podataka ................................................................................................................................. 14 1.5.1 Administratori „opće namjene“ ...................................................................................................................................... 14 1.5.2 Specijalizirani administratori.......................................................................................................................................... 14 1.6 Problemi u okruženju s više različitih DBMS-a .................................................................................................................. 16 1.7 Prilagodba novim tehnologijama ........................................................................................................................................ 17 1.7.1 Upravljanje proceduralnom logikom .............................................................................................................................. 17 1.7.2 Baze za internetsko poslovanje .................................................................................................................................... 17 1.7.3 PDA baze ...................................................................................................................................................................... 18 1.7.4 Implementacija sigurnosti podataka .............................................................................................................................. 18 2. Poglavlje: ...... Uspostava okruženja za baze podataka ............................................................................................................... 19 2.1 Razmatranja kod odabira DBMS-a .................................................................................................................................... 20 2.1.1 Odabir DBMS-a ............................................................................................................................................................. 20 2.1.2 Odabir izdanja DBMS-a ................................................................................................................................................ 22 2.1.3 DBMS u klasteru ........................................................................................................................................................... 23 2.1.4 Gomilanje DBMS-a u tvrtki ............................................................................................................................................ 24 2.1.5 Odabir hardvera ............................................................................................................................................................ 24 2.2 Instaliranje DBMS-a ........................................................................................................................................................... 24 2.2.1 Priprema za instalaciju .................................................................................................................................................. 24 2.2.2 Hardverski zahtjevi ........................................................................................................................................................ 25 2.2.3 Prostor i uređaji za pohranu podataka .......................................................................................................................... 25 2.2.4 Memorijski zahtjevi ........................................................................................................................................................ 26 2.2.5 Konfiguriranje DBMS-a ................................................................................................................................................. 27 2.2.6 Povezivanje DBMS-a s ostatkom infrastrukture ............................................................................................................ 28 2.2.7 Provjera instalacije ........................................................................................................................................................ 28 2.3 Nadogradnja DBMS-a ........................................................................................................................................................ 28 2.3.1 Razmatranja kod nadogradnje DBMS-a ....................................................................................................................... 28 2.3.2 Nove značajke............................................................................................................................................................... 30 2.3.3 Kompleksnost okruženja ............................................................................................................................................... 30 2.3.4 Nadogradnja ostatka softvera iz okruženja ................................................................................................................... 30 3. Poglavlje: ...... Fizička građa baze i smještaj datoteka na diskovima ........................................................................................ 31 3.1 Dohvaćanje podataka s diska ............................................................................................................................................ 32 3.1.1 Struktura DBMS-a ......................................................................................................................................................... 32 3.1.2 Vrste memorija .............................................................................................................................................................. 33 3.1.3 Građa i funkcioniranje magnetskog diska ..................................................................................................................... 34 3.1.4 Upravljač međuspremnikom.......................................................................................................................................... 36 3.1.5 Upravljanje međuspremnikom kroz DBMS i kroz operativni sustav .............................................................................. 37 3.2 Organizacija datoteka ........................................................................................................................................................ 38 3.2.1 Datoteke u relacijskim bazama podataka ..................................................................................................................... 38 3.2.2 Nesortirane datoteke ..................................................................................................................................................... 38 3.2.3 Sortirane datoteke ......................................................................................................................................................... 41 3.2.4 Raspršene datoteke ...................................................................................................................................................... 42 3.2.5 Odabir najpogodnije organizacije datoteke ................................................................................................................... 44 3.3 Indeksi ................................................................................................................................................................................ 44 3.3.1 Osnovno o indeksima.................................................................................................................................................... 44 3.3.2 Indeks-sekvencijalna organizacija................................................................................................................................. 45 3.3.3 Indeks-direktna organizacija ......................................................................................................................................... 47 3.3.4 Podatkovne strukture za indekse .................................................................................................................................. 48 3.4 Smještaj datoteka na disku ................................................................................................................................................ 50 3.4.1 Tipovi datoteka od kojih se baze sastoje ...................................................................................................................... 50 3.4.2 Preporuke za raspored datoteka po diskovima ............................................................................................................. 50 3.5 RAID................................................................................................................................................................................... 51 3.5.1 Osnovno o RAID-u ........................................................................................................................................................ 51 3.5.2 RAID razine ................................................................................................................................................................... 52 3.5.3 Izbor RAID razine .......................................................................................................................................................... 56 3.5.4 Hardverski i softverski RAID ......................................................................................................................................... 56 4. Poglavlje: ...... Sigurnosne kopije i oporavak baza ...................................................................................................................... 57 4.1 Sigurnosne kopije............................................................................................................................................................... 58 4.1.1 Potreba za izradom sigurnosnih kopija ......................................................................................................................... 58 4.1.2 Tipovi sigurnosnih kopija ............................................................................................................................................... 58 4.1.3 Određivanje rasporeda izrade sigurnosnih kopija ......................................................................................................... 60 4.1.4 Logičke sigurnosne kopije ............................................................................................................................................. 61 4.1.5 Preporuke za izradu sigurnosnih kopija ........................................................................................................................ 62 4.2 Oporavak baza ................................................................................................................................................................... 63 4.2.1 Način rada transakcijskog loga ..................................................................................................................................... 63 4.2.2 Proces oporavka baza .................................................................................................................................................. 64 4.2.3 Aktivnosti administratora u postupku oporavka............................................................................................................. 64 4.2.4 Tipovi oporavka ............................................................................................................................................................. 65 4.2.5 Oporavak pokvarenih stranica podataka....................................................................................................................... 68 4.2.6 Plan oporavka baze ...................................................................................................................................................... 68 4.3 Planiranje oporavka od katastrofe...................................................................................................................................... 69 4.3.1 Potreba za planiranjem oporavka od katastrofe............................................................................................................ 69 4.3.2 Prioriteti kod oporavka .................................................................................................................................................. 69 4.3.3 Udaljena lokacija ........................................................................................................................................................... 69 4.3.4 Priprema podataka za oporavak na udaljenoj lokaciji ................................................................................................... 70 4.3.5 Izrada i testiranje plana oporavka od katastrofe ........................................................................................................... 70 5. Poglavlje: ...... Sigurnost u bazama podataka .............................................................................................................................. 73 5.1 Osnove sigurnosti baza podataka ...................................................................................................................................... 74 5.1.1 Specifičnost sigurnosti baza podataka .......................................................................................................................... 74 5.1.2 Autentikacija i autorizacija ............................................................................................................................................. 74 5.1.3 Korisnički računi za pristup DBMS-u i bazama ............................................................................................................ 75 5.2 Upravljanje sigurnošću unutar DBMS-a ............................................................................................................................. 76 5.2.1 Naredbe GRANT i REVOKE ............................................................................................................................................... 76 5.2.2 Tipovi prava ................................................................................................................................................................... 77 5.2.3 Upravljanje pravima ...................................................................................................................................................... 79 5.2.4 Autorizacijske grupe ...................................................................................................................................................... 80 5.3 Alternativni sigurnosni mehanizmi...................................................................................................................................... 81 5.3.1 Korištenje pogleda za uspostavu sigurnosti .................................................................................................................. 81 5.3.2 Korištenje pohranjenih procedura za uspostavu sigurnosti........................................................................................... 82 5.4 Praćenje događaja unutar DBMS-a ................................................................................................................................... 83 5.5 Vanjska sigurnost ............................................................................................................................................................... 83 6. Poglavlje: ...... Performanse baza podataka ................................................................................................................................. 85 6.1 Upravljanje performansama ............................................................................................................................................... 86 6.1.1 Reaktivno i proaktivno upravljanje performansama ...................................................................................................... 86 6.1.2 Tipovi alata za upravljanje performansama .................................................................................................................. 88 6.1.3 Povezanost performansi baze i ostatka sustava ........................................................................................................... 90 6.2 Korištenje memorije ........................................................................................................................................................... 92 6.2.1 Korištenje podatkovnog međuspremnika ...................................................................................................................... 92 6.2.2 Korištenje programskog međuspremnika...................................................................................................................... 94 6.2.3 Korištenje log međuspremnika ...................................................................................................................................... 94 6.2.4 Ostali potrošači memorije.............................................................................................................................................. 94 6.3 Tehnike optimiziranja baze ................................................................................................................................................ 95 6.3.1 Particioniranje tablica .................................................................................................................................................... 95 6.3.2 Indeksiranje ................................................................................................................................................................... 96 6.3.3 Ostavljanje slobodnog prostora..................................................................................................................................... 98 6.3.4 Kompresija .................................................................................................................................................................. 100 6.3.5 Određivanje lokacije datoteka ..................................................................................................................................... 100 6.3.6 Promjena veličine stranice .......................................................................................................................................... 100 6.3.7 Reorganizacija baze.................................................................................................................................................... 101 6.3.8 Kreiranje i ažuriranje statistike .................................................................................................................................... 103 7. Poglavlje: ...... Automatiziranje administrativnih zadataka ....................................................................................................... 105 7.1 Prednosti automatiziranja................................................................................................................................................. 106 7.2 Servisi za upravljanje automatiziranim zadacima ............................................................................................................ 106 7.3 Rasporedi izvršavanja automatiziranih zadataka ............................................................................................................. 106 7.3.1 Rasporedi bazirani na vremenu .................................................................................................................................. 107 7.3.2 Rasporedi bazirani na događajima.............................................................................................................................. 108 7.4 Uvjetno pokretanje zadataka............................................................................................................................................ 108 7.5 Dodjeljivanje prioriteta automatiziranim zadacima ........................................................................................................... 109 7.6 Nadzor automatiziranih zadataka..................................................................................................................................... 110 7.7 Sigurnost kod automatiziranih zadataka .......................................................................................................................... 110 8. Poglavlje: ...... Dostupnost baza podataka ................................................................................................................................. 113 8.1 Poslovne potrebe i dostupnost baza ................................................................................................................................ 114 8.1.1 Povećanje zahtjeva za dostupnošću ........................................................................................................................... 114 8.1.2 Otežavajuće okolnosti kod osiguravanja dostupnosti ................................................................................................. 114 8.1.3 Određivanje prihvatljivog postotka dostupnosti ........................................................................................................... 115 8.2 Uzroci nedostupnosti........................................................................................................................................................ 115 8.2.1 Hardverski problemi .................................................................................................................................................... 115 8.2.2 Softverski problemi...................................................................................................................................................... 117 8.2.3 Problemi s podacima................................................................................................................................................... 117 8.2.4 Problemi s performansama ......................................................................................................................................... 118 8.2.5 Loše postavljene procedure oporavka ........................................................................................................................ 118 8.2.6 Administratorske pogreške.......................................................................................................................................... 118 8.2.7 Planirano vrijeme nedostupnosti ................................................................................................................................. 119 8.3 Načini osiguranja dostupnosti .......................................................................................................................................... 119 8.3.1 Održavanje baze dok je ona on-line............................................................................................................................ 120 8.3.2 Ubrzavanje izvođenja procesa koji uzrokuju nedostupnost ........................................................................................ 120 8.3.3 Korištenje značajki DBMS-a za visoku dostupnost ..................................................................................................... 121 9. Poglavlje: ...... Premještanje i replikacija podataka ................................................................................................................... 123 9.1 Premještanje podataka .................................................................................................................................................... 124 9.1.1 Load pomoćni programi .............................................................................................................................................. 124 9.1.2 Unload pomoćni programi ........................................................................................................................................... 126 9.1.3 Export i import pomoćni programi ............................................................................................................................... 127 9.1.4 ETL softver .................................................................................................................................................................. 128 9.2 Replikacija ........................................................................................................................................................................ 128 9.2.1 Razlozi korištenja replikacije ....................................................................................................................................... 129 9.2.2 Objekti koji se mogu replicirati .................................................................................................................................... 129 9.2.3 Tipovi replikacije.......................................................................................................................................................... 129 9.3 Tipični scenariji korištenja replikacije ............................................................................................................................... 130 9.3.1 Replikacija između dva ili više poslužitelja .................................................................................................................. 131 9.3.2 Replikacija između poslužitelja i klijenata ................................................................................................................... 136 10. Poglavlje: .... Indeks pojmova .................................................................................................................................................... 139 4. Poglavlje: Sigurnosne kopije i oporavak baza U ovom poglavlju naučit ćete: ; ; ; Koji tipovi sigurnosnih kopija postoje Što se događa za vrijeme oporavka baze Kako planirati oporavak od katastrofe Str.58§ 4. Poglavlje: SIGURNOSNE KOPIJE I OPORAVAK BAZA 4.1 Sigurnosne kopije 4.1.1 Potreba za izradom sigurnosnih kopija Za vrijeme rada DBMS-a razne pogreške mogu uzrokovati nedostupnost baza ili oštećenje podataka u njima. Iako korištenje UPS sustava, zrcaljenje diskova, failover ili neke druge tehnike mogu povećati pouzdanost, i dalje se može dogoditi da zbog hardverske greške otkaže disk pa da zbog toga podaci postanu nedostupni. Moguć je i kvar na memorijskim čipovima, matičnoj ploči ili nekoj drugoj hardverskoj komponenti, što za posljedicu može imati i pad cijelog sustava. Softverske pogreške također mogu uzrokovati probleme u funkcioniranju DBMS-a. To mogu biti interne greške u samom DBMS-u, greške u operativnom sustavu ili u nekom drugom softveru koji je povezan s DBMS-om. Iako one obično ne uzrokuju oštećenja podataka, može se dogoditi da zbog njih cijela DBMS instanca postane nedostupna ili da pojedini dijelovi sustava ne rade ispravno. Najčešće su ljudske pogreške, kao na primjer pogrešno ažuriranje ili nehotično brisanje podataka od strane krajnjih korisnika, ali i od strane administratora baze. Administrator može pokrenuti neke skripte u pogrešno vrijeme ili s krivim parametrima pa na taj način pokvariti podatke. Što se prije nastale pogreške uoče i isprave, šteta će biti manja. Zadatak administratora baza je vraćanje baze u stanje prije nastanka problema i omogućavanje normalnog nastavka rada. Taj se postupak naziva oporavkom (recovery). Da bi se oporavak baza mogao izvesti, moramo imati kopije baza iz vremena prije nego se greška dogodila. Takve kopije, iz kojih se baze u slučaju potrebe mogu oporaviti, zovu se sigurnosne kopije baza (backups). 4.1.2 Tipovi sigurnosnih kopija Za razliku od kopiranja nekih „običnih“ datoteka, poput slika, multimedijalnih ili tekstualnih datoteka, izrada sigurnosnih kopija baza je složeniji zadatak. Baze mogu biti velike i njihovo potpuno kopiranje može trajati jako dugo. Zbog toga će se ponekad izrađivati kopije samo onih podataka koji su se promijenili. Budući da se baze sastoje od podatkovnih i log datoteka, treba znati kako uskladiti kopiranje tih dviju vrsta datoteka da bi se baze iz svojih kopija mogle vratiti u konzistentno stanje. Da bi se omogućilo vrijeme oporavka unutar granica koje zahtijeva poslovanje, a da se zbog izrade kopija ne remeti normalan rad sustava, treba znati koji tipovi kopija nam stoje na raspolaganju, koje su njihove karakteristike i kako se koriste. Tada možemo napraviti dobru strategiju izrade sigurnosnih kopija baza koje administriramo. Svaki DBMS ima svoje specifičnosti pa se tako i proces izrade sigurnosnih kopija i vrste kopija razlikuju od jednog do drugog DBMS-a. Ovdje ćemo izdvojiti stvari koje vrijede za većinu današnjih DBMS-a. On-line i off-line sigurnosne kopije Sigurnosne kopije se mogu izrađivati dok je baza on-line, tj. za vrijeme dok su korisnici spojeni na bazu i izvode po njoj čitanja ili zapisivanja. Kod takvog kopiranja potrebno je imati zabilježene i promjene koje su se nad podacima događale dok je kopiranje trajalo. Te su promjene zapisane u log datoteci. Prilikom oporavka baze iz on-line sigurnosne kopije, DBMS će nakon vraćanja podataka iz podatkovnih datoteka morati pročitati kopirane log podatke i ponoviti transakcije koje su potvrđene (committed), odnosno poništiti one nepotvrđene (uncommitted). Na taj se način osigurava konzistentnost podataka nakon oporavka. Često se ovaj tip sigurnosne kopije naziva hot backup. tel: 01 2222 182, e-mail: [email protected] § www.racunarstvo.hr § Str.59§ ADMINISTRIRANJE BAZA PODATAKA Sigurnosna kopija može se napraviti i nakon što se baza stavi off-line. Prilikom stavljanja off-line, DBMS se pobrine da podaci u tako „spuštenoj“ bazi budu konzistentni. Nakon toga, dovoljno je kopirati samo podatkovne datoteke jer za vrijeme kopiranja nema nikakvih promjena nad bazom. Oporavak iz off-line kopija je brži, ali ponekad poslovanje zahtijeva stalnu dostupnost pa takva kopiranja nisu izvediva. Ovakve kopije ponekad se nazivaju cold backups. Potpune i inkrementalne sigurnosne kopije Potpuna sigurnosna kopija (full backup) sadrži sve stranice svih podatkovnih datoteka baze. Za razliku od nje, inkrementalna kopija (incremental backup) sadrži samo stranice podatkovnih datoteka promijenjene nakon kreiranja posljednje potpune ili inkrementalne kopije. DBMS-i se razlikuju po tome koje mogućnosti kod kreiranja inkrementalnih kopija nude. Jednako tako se razlikuju i nazivi koji se upotrebljavaju. U Oracleu, na primjer, postoje dvije vrste inkrementalnih kopija – diferencijalne i kumulativne. Diferencijalne sadrže samo promjene nastale nakon zadnje inkrementalne kopije, a kumulativne sadrže promjene nastale nakon zadnje potpune kopije. Za razliku od toga, SQL Server ima samo jednu vrstu inkrementalnih kopija koje Microsoft naziva diferecijalnima, a one sadrže sve promjene nastale od zadnje potpune kopije. Kad su baze velike, obično se pojavljuje problem s trajanjem potpunog kopiranja. Da bi se on zaobišao, izrađuju se inkrementalne kopije, što može trajati znatno kraće. No, ako treba vratiti bazu koja je bila inkrementalno kopirana, takav će oporavak duže trajati jer je potrebno prvo restaurirati bazu iz potpune kopije, a onda na nju primijeniti promjene iz inkrementalne kopije. U primjeru sa slike 4.1 potpuna kopija baze radi se ponedjeljkom u 3.00. Nakon toga, utorkom, srijedom i četvrtkom izrađuju se inkrementalne kopije u isto vrijeme. Ako u četvrtak u 10.00 baza padne, oporavak će se izraditi prvo restauriranjem baze iz potpune kopije od ponedjeljka, a nakon toga će se primijeniti promjene iz inkrementalne kopije od četvrtka (ovisno o tipu inkrementalnih kopija, može biti potrebno restaurirati promjene iz svih inkrementalnih kopija redom). Slika 4.1 Raspored izrade potpunih i inkrementalnih kopija Inkrementalno kopiranje pogodno je kad su baze velike, ali u njima nema puno promjena podataka. Tada ušteda na vremenu kopiranja može biti puno važnija nego neznatno povećanje vremena za oporavak. Kod malih baza, kod kojih potpuno kopiranje ne traje dugo, nije potrebno raditi inkrementalne kopije jer se na taj način usložnjava procedura kopiranja, a pogodnosti nisu velike. Neki DBMS-i imaju mogućnost analiziranja količine promjena u bazi pa mogu sami odlučiti hoće li se napraviti potpuna ili inkrementalna kopija. Administratori mogu podesiti graničnu vrijednost, tj. postotak promijenjenih podataka iznad kojega će DBMS raditi potpunu kopiju. Općenito, kad se promijeni 40% ili više podataka, inkrementalne kopije nisu dobar izbor. Kod nekih DBMS-a postoje pomoćni programi za spajanje inkrementalnih kopija. Više inkrementalnih kopija može biti spojeno u jednu ili se one mogu spojiti s potpunom kopijom, Zagreb – Ilica 242 §Visoka škola za primijenjeno računarstvo § Str.60§ 4. Poglavlje: SIGURNOSNE KOPIJE I OPORAVAK BAZA stvarajući na taj način novu potpunu kopiju. Takvo spajanje je dobro pokrenuti odmah nakon izrade inkrementalne kopije. Pri spajanju tih kopija nemamo problema s ometanjem normalnog rada baze, a također smanjujemo vrijeme potrebno za oporavak. Sigurnosne kopije log datoteka Svaka promjena podataka ili strukture baze zapisuje se u njezinu log datoteku. DBMS koristi zapise iz log datoteke da bi ponovnim izvođenjem ili poništavanjem tih promjena u procesu oporavka mogao dovesti bazu u konzistentno stanje. Kopija log datoteke je nužna kad je potrebno bazu vratiti u stanje kakvo je bilo u točno određenom trenutku u prošlosti. Oporavak tada započinje iz podatkovne kopije, a nastavlja se čitanjem kopije loga i ponavljanjem promjena nastalih nakon izrade podatkovne kopije, te poništavanjem onih koje su potvrđene nakon trenutka u koji se trebamo vratiti. Log datoteka u koju se podaci o promjenama trenutno zapisuju naziva se aktivnim logom. S vremenom u log datoteci ima sve više zapisa i ona se može popuniti do kraja. Tada DBMS uključuje proces arhiviranja loga (log offloading), kojim se aktivni log kopira na drugu lokaciju. Kad se aktivni log arhivira, on se resetira i podaci se opet zapisuju u njega. Ovaj koncept arhiviranja loga je u svakom DBMS-u nešto drugačiji. Tako se, na primjer, kod SQL Servera ne govori o arhiviranju niti log offlaodingu, već o backupu log datoteke. Ona ima aktivni i neaktivni dio. Izvođenjem backupa loga neaktivni dio se kopira u backup datoteku i nakon toga se prostor koji je on zauzimao oslobodi za nova zapisivanja. Obično svaki DBMS ima nekoliko načina rada s log datotekama, a razlikuju se u detaljnosti zapisivanja promjena te mogućnošću kopiranja loga. Tako Oracle može funkcionirati u noarchivelog ili archivelog načinu rada. Kod noarchive log načina onemogućeno je arhiviranje loga, pa je samim time smanjen i stupanj oporavka baze. Slično, SQL Server ima tri načina rada: simple, bulk-logged i full. Simple način rada ne daje mogućnost kopiranja loga pa se u njemu ne može računati na oporavak u bilo koju točku u prošlosti. Kopije dijelova baze Kod velikih baza, gdje su izrade sigurnosnih kopija dugotrajne, mogu biti korisne mogućnosti kopiranja samo pojedinih dijelova baze. Obično se to odnosi na skup fizički povezanih tablica. Tako u Oracleu postoji mogućnost da se naprave sigurnosne kopije pojedinih tablespaceova. U SQL Serveru se skup tablica može smjestiti u različite datoteke, a svaka datoteka se može zasebno kopirati. Ako imamo baze u kojima postoji puno arhivskih podataka, koji se samo čitaju i više se ne ažuriraju, onda je tablice dobro razdvojiti tako da se one arhivske (read-only) ne nalaze u istim datotekama kao i one nad kojima se događaju promjene. Tada možemo uspostaviti strategiju u kojoj jednom napravimo potpunu kopiju baze, a nakon toga radimo kopiranje samo onih datoteka s tablicama čiji podaci se mijenjaju. Read-only podaci se ne trebaju kopirati tako često. 4.1.3 Određivanje rasporeda izrade sigurnosnih kopija Kod kreiranja rasporeda po kojem će se sigurnosne kopije za neku bazu kreirati, važno je napraviti dobar balans između dva oprečna zahtjeva: onog da se kopije izrađuju što češće kako bi se smanjilo kasnije vrijeme oporavka i onog da izrade kopija što manje ometaju normalan rad sustava. Nisu svi podaci u bazi jednako važni. Neki mogu biti presudni za poslovanje tvrtke, dok su drugi sporedni ili su dostupni i na nekim drugim mjestima. Prije nego se uspostavi strategija i raspored tel: 01 2222 182, e-mail: [email protected] § www.racunarstvo.hr § Str.61§ ADMINISTRIRANJE BAZA PODATAKA za izradu sigurnosnih kopija svakako bi bilo dobro analizirati poslovanje te prirodu podataka i njihovu važnost. U toj analizi treba dati odgovore na sljedeća pitanja: • Koliko se često podaci mijenjaju? • Koliko su podaci važni za poslovanje? • Mogu li se određeni podaci lako rekreirati iz nekih drugih izvora? • Koliko je loše ako određene podatke izgubimo? • Postoji li vrijeme u kojem nitko ne treba raditi s bazom? Je li potrebna dostupnost 24/7 (24 sata dnevno, 7 dana u tjednu)? • Koliko je skupo vrijeme nedostupnosti sustava zbog oporavka? Nakon takve analize, podatke možemo klasificirati prema važnosti i promjenjivosti, kao na grafu sa slike 4.2. Što se podatak nalazi više desno, on je dinamičniji, tj. češće se mijenja. Što se nalazi više gore, to je on važniji za poslovanje. Kad podatke smjestimo na takav graf, iz njega možemo zaključiti koliko ih često trebamo kopirati. Općenito, što se podaci češće mijenjaju, češće ih treba kopirati. Isto vrijedi i za veoma važne podatke. Slika 4.2 Klasificiranje podataka po važnosti i promjenjivosti Podaci iz prvog kvadranta na grafu sa slike 4-2 vrlo su promjenjivi i izuzetno važni za poslovanje. S obzirom na to, u procesu oporavka mora ih se moći brzo vratiti pa ih zbog toga treba kopirati često. U drugom kvadrantu su podaci koji su od velike važnosti, ali se ne mijenjaju često. Njih treba brzo vratiti u slučaju pada baze. Prihvatljivo rješenje može biti inkrementalno kopiranje takvih podataka, uz spajanje s potpunom kopijom da bi se vrijeme vraćanja takvih podataka što više smanjilo. Podaci iz trećeg kvadranta često se mijenjaju, ali nisu previše važni. Možda se mogu rekreirati pomoću nekih skripti pa, ako ih ima jako mnogo, možemo odlučiti uopće ih ne kopirati. U četvrti kvadrant smješteni su podaci koji su statični i od male važnosti. Njih treba uključivati u respored kopiranja tek nakon što smo taj raspored ustanovili za podatke iz prva tri kvadranta. 4.1.4 Logičke sigurnosne kopije Za razliku od metoda koje smo do sada spominjali i u kojima se datoteke baze fizički kopiraju (pa se zato često zovu image copies), u specijalnim slučajevima bit će zgodno kopirati samo podatke, a ne i cijelu fizičku datoteku sa svojom strukturom. Obično se to svodi na izvoz podataka iz tablica Zagreb – Ilica 242 §Visoka škola za primijenjeno računarstvo §
© Copyright 2024 Paperzz