online kép - Fájl  tubefájl feltöltés file feltöltés - adja hozzá a fájlokat onlinefedezze fel a legújabb online dokumentumokKapcsolat
  
 

Letöltheto dokumentumok, programok, törvények, tervezetek, javaslatok, egyéb hasznos információk, receptek - Fájl kiterjesztések - fajltube.com

Online dokumentumok - kep
  

Az ORACLE adatbaziskezelö rendszer

számítógépes



felso sarok

egyéb tételek

jobb felso sarok
 
Mikroszamítógép-architektúrak
A digitalis elektronika alapjai
Az Excel diagramjai
A WINDOWS NT/2000/XP
A C nyelv kifejezései, utasítasai
A Windows95, az OSR2 valtozat, és a Windows98 telepítése, üzemeltetése
Bűvész programok, utility-k
Az ORACLE adatbaziskezelő rendszer
Képek tarolasa az adatbazisban
Körvonalak
 
bal also sarok   jobb also sarok

Az ORACLE adatbáziskezelö rendszer



Az ORACLE az egyik vezetö relációs adatbáziskezelö rendszer, amely nagy méretü adatbázisok biztonságos kezelését tüzte ki célul. Számos olyan helyen használják, ahol fontos az adatok gyors elérése és az adatbiztonság (pl. banki rendszerek). Eredetileg középgépekre fejlesztették ki, majd késöbb létrehozták a személyi számítógépeken futtatható változatát és nagygépes vál 949f51j tozatát is. Az ORACLE adatbáziskezelönek egyre újabb verziói készülnek el. Mi a továbbiakban az ORACLE 7-es verziójával ismerkedünk meg. Az adatbáziskezelö rendszer részletes bemutatásának az a célja, hogy egy konkrét példán vizsgáljuk meg az adatbáziskezelö rendszer komplex feladatainak megvalósítását.


Az ORACLE adatbázis egy egységet alkotó adatok összessége.

Az adatbázis file-okból áll, fizikailag ezek az adat-file-ok, a REDO LOG file-ok és a CONTROL file.

Logikailag az adatbázis tablespace-ekre bomlik. A tablespace-k a logikai kapcsolatban levö objektumok csoportosítására szolgálnak. Például az egy alkalmazáshoz tartozó objektumokat egy tablespace-ben helyezik el.

Adatbázis-objektumok az adattáblák, indexek, clusterek, nézettáblák, tárolt eljárások stb.

Az adattáblákban találhatók a felhasználók által elérhetö adatok.

A nézettáblák az adattáblákon alapulnak. A nézettáblák tulajdonképpen tárolt lekérdezések. Nem tartalmaznak adatokat, az adatokat azokból a táblákból emelik ki, amelyeken alapulnak. Sorokból és oszlopokból állnak, mint a táblák, ugyanúgy használhatjuk öket. A nézettáblák segítségével az adatokat úgy csoportosíthatjuk, ahogy az egyes felhasználók számára a legmegfelelöbb. A nézettáblák módosíthatók, de csak akkor, ha egyetlen adattáblán alapulnak. Ekkor a módosítás az adattáblában történik meg. Nézettáblákból is hozhatunk létre újabb nézettáblákat.

Az egyes táblázatokhoz készíthetünk indexeket. Az indexek az adatok visszakeresésének gyorsítására szolgának. Az index kulcsa az adattábla egy vagy több oszlopa lehet. Bármikor létrehozhatunk és megszüntethetünk indexeket. Az index az adattábla módosítása esetén automatikusan módosul.

A clusterezés egy adattárolási módszer. A cluster egy vagy több táblából álló csoport, melyek fizikailag együtt kerülnek tárolásra. Azokat a táblákat célszerü egy clusterben elhelyezni, amelyeket gyakran használunk együtt. Ezzel a tárolással jelentösen gyorsítani lehet az adatok visszakeresését.

A tablespace-k között kitüntetett szerepe van a SYSTEM tablespace-nek. Ebben található az adatszótár. A SYSTEM tablespace automatikusan létrejön, amikor az adatbázist létrehozzuk. A tablespace-k segítségével az adatbázis-adminisztrátor vezérelni tudja az adatbázis elhelyezkedését a lemezeken, részleges adatmentést tud végezni úgy, hogy csak bizonyos tablespace-ket ment. Egy tablespace lehet online, vagy offline. A felhasználók számára csak az online tablespace-k érhetök el. Így az adatbázis-adminisztrátor egyes tablespace-ket idölegesen elzárhat a felhasználók elöl.

Az adatszótár egy táblagyüjtemény, amely az adatbázis leírását tartalmazza. Ezek a táblák közvetlenül nem módosíthatók, csak lekérdezhetö a tartalmuk. Itt találhatók többek között az adatbázis felhasználóinak leírása (név, jogosultság), az adatbázis objektumainak leírása (táblák, indexek, clusterek stb.).


A REDO LOG file-ok információkat gyüjtenek az adatbázis legutóbbi mentése óta történt változásokról egy esetleges sérülés miatt szükséges helyreállításhoz (on-line mentés).


Az adatbázishoz szükség van még egy vezérlö-file-ra (CONTROL file), ez az adatbázis fizikai struktúrájáról tartalmaz információkat. Például az adatbázis nevét, az adat- és a redo log file-ok nevét, létrehozásuk idejét. Az adatbázis megnyitásakor a vezérlö file segítségével nyitja meg az adatbáziskezelö rendszer az adatbázishoz szükséges fizikai file-okat.





Tranzakciók


A tranzakció egy felhasználó által végzett müveletek logikai egysége. Az elsö tranzakció a felhasználó legelsö utasításával kezdödik. A tranzakció egy commit, vagy rollback utasításig tart. Ezután újabb tranzakció kezdödik.


A COMMIT utasítás megerösíti a tranzakció során elvégzett müveleteket, véglegesíti az adatokon történt változtatásokat. Hatására feloldódnak a tranzakció során létrejött lockolások.


A ROLLBACK utasítás hatására törlödnek a tranzakció során végrehajtott adatváltoztatások és feloldódnak a tranzakció során létrejött lockolások.


Ha egy tranzakció során a munka valamilyen oknál fogva megszakad, akkor az utolsó COMMIT utasítás utáni változtatások törlödnek.

Amíg egy felhasználó nem erösítette meg a commit utasítás segítségével az adatokon végzett változtatásokat, a többi felhasználó az adatok eredeti állapotát látja.




Adatmentés és helyreállítás az ORACLE adatbáziskezelö rendszerben


Az ORACLE adatbáziskezelö fejlett mentési és helyreállítási eszközökkel rendelkezik. Az adatbáziskezelö két mentés között a REDO LOG file-okban tárolja az adatbázisban történt változtatásokat. A REDO LOG file-ok ciklikusan kerülnek felhasználásra. Amikor az utolsó is megtelik, az elsö file tartalma törlödik és újra ez lesz az aktuális REDO LOG file. Lehetöség van arra, hogy a megtelt REDO LOG file-ok tartalmát egy archív REDO LOG file-ba helyezzük el, így a ciklus újraindulása esetén sem veszik el információ. A REDO LOG file-okat általában több példányban tárolják különbözö lemezeken, hogy az esetleges lemezhibák, vagy adatsérülések után is legyen legalább egy helyes példány. Ugyanezen megfontolásból a CONTROL file-ból is legalább két példányt használnak, ezek a file-ok egymás tükörképei (pontosan megegyeznek egymással).

Meghibásodás esetén az adatbázis legutolsó mentéséböl a CONTROL file segítségével az adatbázis helyreállítható. A REDO LOG file-ok tartalmazzák a mentés óta történt változásokat. Ezeket az adatbázison átvezetve helyreállítható az adatbázisnak az az állapota, ami a meghibásodás bekövetkezése elött volt. Az utolsó meg nem erösített tranzakciók módosításai elvesznek.

Mivel a tranzakciók állandó könyvelése idöigényes és lassítja a rendszer müködését, a felhasználó döntheti el, hogy igénybe veszi-e az adatbáziskezelö ezen szolgáltatását.





Az adatvédelem további területei az ORACLE adatbáziskezelö rendszerben


Az adatok integritását alapvetöen a táblák leírásánál az oszlopokra megadott követelmények (constraint) teljesülésének figyelésével biztosítja az adatbáziskezelö rendszer.


Követelmények lehetnek:


NOT NULL                 az oszlopban nem lehet kitöltetlen cella

UNIQUE                     az oszlopban szereplö minden értéknek

különbözönek kell lennie

PRIMARY KEY          az oszlop elsödleges kulcs

FOREIGN KEY          az oszlop idegen kulcs

CHEK                         az oszlopba kerülö értékre vonatkozó feltétel


Az adatintegritás biztosítására szolgálnak az adatbázis-triggerek is. Ezek tárolt eljárások, amelyek a megfelelö adattábla minden módosításakor (módosítás, törlés, új sor felvitele) végrehajtódnak.



Az illetéktelen felhasználások kizárását rendszer és adat szinten valósítja meg az ORACLE.

Rendszer szintü védelem, hogy az adatbázist csak azok a felhasználók használhatják, akik érvényes felhasználói névvel (username) rendelkeznek és ismerik a névhez tartozó jelszót (password). Szabályozható, hogy az egyes felhasználók mikor férhetnek hozzá az adatbázishoz és milyen rendszermüveleteket (pl. tablespace létrehozása) hajthatnak végre.

Az adatszintü védelem során meghatározható, hogy az egyes felhasználók mely adatobjektumokhoz férhetnek hozzá, és azokon milyen müveleteket hajthatnak végre. Lehet, hogy egy felhasználónak egy táblával kapcsolatban csak lekérdezési joga van, míg egy másik felhasználó adatokat is vihet fel a táblába, de nem törölhet belöle stb.

A rendszermüveletek többségét általában csak az adatbázis-adminisztrátorok számára engedélyezik.




Szinkronizáció az ORACLE adatbáziskezelö rendszerben


Az ORACLE adatbáziskezelö a konkurens müveletek szinkronizálását - speciális eseteket kivéve - automatikusan végzi. Az automatikus zárolás sor szinten történik, vagyis csak azt a sort zárolja az adatbáziskezelö rendszer a többi felhasználó elöl, amelyre a müvelet vonatkozik. A zárolt sorok továbbra is lekérdezhetök a többi felhasználó számára, azonban egyéb müveleteket (pl. módosítás, törlés) nem végezhetnek rajtuk. Az ORACLE adatbáziskezelö rendszerben lehetöség van tábla szintü zárolás megvalósítására is.

Bizonyos esetekben szükség lehet az automatikus zárolás felülbírálására. Ezért lehetöség van zároló utasítások használatára is.

Az adatbáziskezelö figyeli az esetleges patthelyzetet, ennek észlelésekor az ezt okozó tranzakciókat megszünteti és visszaállítja a tranzakciók elötti állapotot.




Osztott adatbázisok kezelése az ORACLE adatbáziskezelö rendszerben


Az ORACLE adatbáziskezelö rendszer felkészült az osztott adatbázisok kezelésére is. A fizikailag különbözö helyeken található adatokat a felhasználók logikailag összekapcsolhatják a különbözö lekérdezések során, akár egy nézettáblában is szerepelhetnek fizikailag különbözö adatbázisokban levö adatok.

Az osztott adatbázisok kezelésének egyik legnagyobb problémája a tranzakciók kezelése - a commit és a roll back megvalósítása. Ugyanis lehetséges, hogy egy tranzakció fizikailag különbözö adatbázisokban található adatokra vonatkozik. A commit és a roll back esetén biztosítani kell, hogy az mindegyik adatbázisban megtörténjen. Elöfordulhat, hogy a commit sikeresen lezajlik az elsö adatbázisban, azonban hiba történik a második adatbázisbeli commit esetén. Ekkor az elsö adatbázisba a tranzakció által végrehajtott módosítások véglegesen belekerültek, míg a másodikba nem. Így az adatok integritása már nem áll fenn. Ezért olyan commit és roll back megoldásra van szükség, amely garantálja, hogy az minden adatbázisban megtörténjen. Erre szolgál a két fázisú commit (two-phase commit) eljárás, melyet az ORACLE adatbáziskezelö rendszer is alkalmaz. Az elsö fázisban a commit müvelet nem kerül ténylegesen végrehajtásra, csak az elökészítése történik meg, melynek során az adatbáziskezelö meggyözödik arról, hogy nincs akadálya a commit végrehajtásának. Ha a tranzakcióban résztvevö minden adatbázisban sikeres volt az elökészítés, akkor a második fázisban megtörténik a tényleges commit végrehajtása. Ha az elökészítés során valamelyik adatbázis hibát jelez, akkor a második fázisban a tranzakcióban résztvevö összes adatbázisban megtörténik a tranzakció visszagörgetése. Így az adatok konzisztensek maradnak.

Az ORACLE adatbáziskezelö rendszerben az SQL*NET hálózatkezelö software biztosítja az osztott adatbázisok kezelését. Ennek segítségével különbözö verziójú ORACLE adatbázisok is összekapcsolhatók, söt a hálózatban olyan nem ORACLE adatbázisok is lehetnek, amelyek kezelését az ORACLE támogatja.




Az ORACLE adatbázis indítása és lezárása


Ahhoz, hogy az ORACLE adatbázissal dolgozni lehessen, az adatbázist el kell indítani (startup). Ennek során a memóriában egy terület lefoglalásra kerül az adatbázisra vonatkozó információk tárolására (system global area - SGA) és megtörténik az adatbázishoz tartozó file-ok megnyitása.


Az adatbázis lezárása során elöször lezárásra kerülnek az adatbázist alkotó file-ok. Ekkor a memóriában található információk visszaírása is megtörténik. Utoljára kerül sor a CONTROL file lezárása. Ezután a lefoglalt memóriaterület felszabadul.


Az adatbázis indítása és lezárása az adatbázis-adminisztrátor feladata (egyfelhasználós rendszerben a felhasználóé).




: 2811


Felhasználási feltételek