IP-08abctAB2G   Adatbázisok-2 gyakorlat
ELTE, 2014/2015.tanév I.félév      Hajas Csilla gyak.vez.
Hétfő 12:15-13:45 PC3, 14:00-15:30 PC3, Szerda 10:15-11:45 PC9
backAB2gyak (főmenü)     AB2ea     11.gyak     II.ZH    OracleDoc
   
C (gépes feladatok)
> C6. Dinamikus V$-nézetek (ez nem lesz a zh-án)
C7. Az Oracle tranzakciókezelési megoldásai 
 
Oracle segédanyagok: Oracle adatbázis szerkezete
+ előadásanyag: naplo.ppt 119-127.o. és konkurencia.ppt 174-194.o.
 

C6. Dinamikus V$-nézetek
    
Segédanyagok:
Nikovits Tibor összefoglalói: init_param.txt   lek_dinam_nez.txt   dinam_nezetek.txt 
   
5.01. Adjuk meg, hogy mikor indult el a jelenleg futó instancia.
 
5.02. Az instancia elindulása óta hány felhasználói bejelentkezés történt a rendszerbe?
         Hány tranzakciót hagytak jóvá (commit) es hányat vontak vissza (rollback) ?
         (V$SYSSTAT)
 
5.03. Mely háttérfolyamatok futnak jelenleg az alábbiak közül?
         (ARC0, DBW0, PMON, SMON, FMON, LMON)
 
5.04. Mekkora a log puffer mérete?
         Mekkora a shared pool mérete?
   
5.05. Maximum hány nyitott kurzort tarthatnak fenn az egyes sessionok?
         Mekkora lehet maximálisan az SGA terület mérete a jelenleg futó instanciánál?
         Hány konkurrens tranzakció futását engedi meg egyidejüleg az adatbáziskezelő?
         (V$PARAMETER)
   
5.06. Kik vannak jelen pillanatban bejelentkezve az adatbázis-kezelőbe?
         Melyik felhasznaló van legrégebben bejelentkezve és hány másodperce?
         Kik azok, akik SQL Developer programmal jelentkeztek be?
   
5.07. Mi a tomx gépen levő adatbázis neve es mikor lett létrehozva?
   
5.08. Melyik adatfájlra vonatkozóan történt a legtöbb blokk-olvasási
         müvelet (PHYBLKRD oszlop) az instancia elindulása óta?
 
5.09. Melyek az adatbázishoz tartozó log fájlok?
         Melyik az amelybe jelenleg is ír a rendszer?
         Melyek az adatbazishoz tartozo control fájlok?
   
5.10. A jelenleg telepített adatbázisban hasznalható-e a Particionálási opció,
         a Bitmap index opció illetve a Real Application Clusters opció?
   
C7. Az Oracle tranzakciókezelési megoldásai 
   
Segédanyagok: 
> Nikovits Tibor összefoglalói: tranzakciok.txt   tranz_peldak.txt   zarolasok.txt  
    
C7.1.feladat:
   - Tranzakció-kezelés alapjai. COMMIT, ROLLBACK,SAVEPOINT
   - Nyissunk meg egyszerre két SQLPLUS ablakot vagy az sqldeveloperben
     két ablakot úgy, hogy abban két külön sessiont nyissunk meg, ami azt jelenti,
     hogy "Connections": legyen egy tomx1 nevű és legyen egy tomx2 nevű is.
     Nekünk az kell, hogy legalább két különböző tranzakciónk legyen,
     ellenőrizzük le: select * from V$session where username like 'EHA%';
  - Végezzünk olvasó és módosító műveleteket a két ablakból felváltva.
  - Az aktív tranzakciók futása közben adjuk meg a rendszerkatalógusok alapján
     a következő információkat a saját magunk által futtatott tranzakciókról.
     (Lásd az alábbi feladatokat itt is:  tranz_peldak.txt, megoldásokkal)
   - Melyek az aktiv tranzakciók, mikor indultak el, és ki futtatja azokat?
   - A tranzakció melyik utasítást futtatja éppen?

C7.2.feladat:
   - Melyik rollback szegmenst használják épp az aktív tranzakciók?
   - Melyik adatfájlba írják a tranzakciók a rollback blokkjaikat?

C7.3.feladat:
   - Holtpont kipróbálása
   - Adjunk meg két utasítássorozatot a két ablakban úgy, hogy DEADLOCK
      alakuljon ki, lásd például itt:  tranz_peldak.txt (megoldásokat kipróbálni).

C7.4.feladat:
   - Az Oracle tranzakcióelkülönítési szintjei
   - Adjunk meg két utasítássorozatot a két ablakban úgy, hogy az egyik ablak
     a következő hibaüzenetet kapja:
     "ORA-08177: Cannot serialize access for this transaction"
     (Tipp: SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;)

C7.5.feladat:
   - Zárolások megnézése
   - Melyik session milyen típusú (sor->TX, tabla->TM) és milyen módú  
      zárolást tart fenn éppen? (RS->2, RX->3, S->4, SRX->5, X->6)
      (SID, USERNAME, TYPE, LMODE)

C7.6.feladat:
   - Melyik session vár épp egy zárolásra
      (SID, USERNAME, TYPE, LMODE, REQUEST),
      illetve melyik zárolasra vár épp valaki
      (SID, USERNAME, TYPE, LMODE, BLOCK)?

C7.7.feladat:
   - Milyen régen tartja fenn a rendszer a zárolasokat, illetve
      milyen régen vár valaki egy zárolásra?
      (SID, USERNAME, TYPE, LMODE, CTIME, REQUEST)

C7.8.feladat:
   - Mely objektumokat tartja zárolás alatt valamelyik session jelen pillanatban?

C7.9.feladat:
   - Derítsük ki (megfelelő manuális lock-oló utasítások segítségével), hogy a
     Row Exclusive (RX) módú zárolást milyen módú zárolásokkal egyidejűleg
     engedélyezi a rendszer, és mely módú zárolások esetén kell várnia a
     későbbi kérelmezőnek.
        
Fel a lap tetejére (mai gyak témakörei)      Vissza az AB2gyak kezdőlapjára