Felhasználói eszközök

Eszközök a webhelyen


ab:oracle

5. ORACLE alapok

5.1 ORACLE komponensek

Az Oracle – objektumrelációs adatbáziskezelő rendszer.
Az utolsó években a relációs ABKR-ek fejlődése oda vezetett, hogy a modern ABKR nem csak relációkat képesek kezelni, hanem objektumokat is. Ez alapján létrejöttek az úgy nevezet ORDBMS (Object-Relation DataBase Management System) objektumrelációs adatbázis-kezelő rendszerek, melyek támogatják nem csak a relációs eszközöket (kulcs, …), hanem az objektumorientált eszközöket (módszerek, … ) is.

Az Oracle Szervereken alapuló lehetséges architektúrák a következők:

  • Host alapú
  • Kliens/szerver
  • Elosztott feldolgozás
  • Webes feldolgozás

Oracle8i Server opciói:

  • Oracle Advanced Security
  • Oracle Advanced Replication
  • Oracle Parallel Server
  • Oracle Visual Information Retrieval
  • Oracle Advanced Networking
  • Oracle interMedia
  • Oracle Spatial
  • Oracle ConText
  • WebServer
  • OLAP

Az Oracle9i két nagy integrált komponenst tartalmaz: Oracle9i Application Server, Oracle9i Database (ABKR), amelyek az Oracle8i volt komponenseit integrálják.

Az Oracle honlapján megtalálható az Oracle9i Developer Suite, amely a következő komponenseket tartalmaz:

  • SQL*Plus
  • Designer
  • Forms Developer
  • Report Developer
  • JDeveloper (Java programozási eszközök),

és más komponenseket.

Az Oracle9i Database az Adatbázis Szerver magját alkotja, amely négy változatban alkalmazható:

  • Enterprise Edition (nagy rendszerek létrehozására);
  • Standard Edition (közepes vállalati AB Serverének létrehozására);
  • Personal Edition (egy felhasználó részére);
  • Oracle9i Lite (alkalmazások mobil telefonokban, …).

Fejlesztési eszközök:

  • Oracle Forms
  • Oracle Reports (jelentéskészítő)
  • SQL*Loader
  • Oracle Designer
  • Personal Oracle8i

Az alkalmazások létrehozása szempontjából lényeges, hogy az Oracle-ban a fejlesztők alkalmazhatnak:

  • procedurális konstrukciókat (PL/SQL);
  • tárolt eljárásokat;
  • AB-triggereket;
  • csomagokat.

Az Internet-technológiák az Oracle-ban a Java és XML nyelvek alapján fejleszthetők.

5.2 Távoli AB

Távoli AB – egy távoli számítógépen tárolt AB, amely az adatbázis-kapcsoló által érhető el. Távoli számítógép – a hálózatban minden olyan számítógép, amely nem gazda-számítógép.
Pillanatfelvétel – egy távoli AB részének lokális másolása. A másolat frissítése automatikusan (meghatározott időintervallumban) vagy parancsok által történik.
Az adatbázis-kapcsoló – olyan objektum, amely a helyi AB-ban tárolódik, és egy távoli AB azonosítására szolgál, tartalmazza ahhoz a kommunikációs útvonalat és opcionálisan tartalmazza a felhasználó nevét és jelszavát. Az AB-kapcsoló létrehozása a CREATE DATABASE LINK parancs által az SQL*Net komponensben történik:

  CREATE DATABASE LINK AB_kapcsoló_név [CONNECT TO] felhasználó IDENTIFIED BY jelszó … USING <sqlnet_sor>;**

A CONNECT TO opció – távoli kapcsolót hoz létre.
A távoli táblák elérése hasonlít a helyi táblák eléréséhez. A távoli tábla neve után meg kell adni a kapcsoló nevét is.

Példa.

  CREATE DATABASE LINK debrecen CONNECT TO USER  felh_1 IDENTIFIED BY ...;  
  SELECT * FROM diak@debrecen; 
  CREATE DATABASE LINK example_backup
     CONNECT TO example IDENTIFIED BY 
    USING ‘example_database’; 
  UPDATE  students@ example_backup
                     SET szak = ‘Zene’ WHERE  id = 10005;
                     

AB-kapcsoló törlése:

  DROP DATABASE LINK AB_kapcsoló_név

Hivatkozás a helyi táblára: [séma.] tábla
és hivatkozás a távoli táblára: [séma.] tábla @AB_kapcsoló

Az AB globális nevének megadása AB_név.Domain_név.

Például, Sales.us.acme.com,
ahol a Sales – az AB neve, a us.acme.com – a domain neve.

5.3 Az Oracle adatbázis architektúrája

Alapvető fogalmak
Adatszótár – táblák és nézetek olyan együttese, amelynek a tulajdonosa a SYS és a SYSTEM nevű AB adminisztrátor. Az adatszótár alapvető információt tartalmaz az ABKR-ről és minden felhasználójáról. Ezeket a táblákat az Oracle automatikusan kezeli. Az adatszótár leggyakrabban használt nézetei:

  • ALL_CATALOG – a felhasználó számára elérhető táblák, nézetek, szinonimák, szekvenciák
  • ALL_INDEXES – a felhasználó számára elérhető indexek
  • ALL_IND_COLUMNS – a felhasználó számára elérhető táblákra épített indexek oszlopai
  • ALL_OBJECTS – a felhasználó számára elérhető objektumok
  • ALL_SEQUENCES – a felhasználó számára elérhető szekvenciák
  • ALL_SYNONIMS – a felhasználó számára elérhető szinonimák
  • ALL_TABLES – a felhasználó számára elérhető relációs táblák
  • USERS_CATALOG – a felhasználó saját táblái, nézetei, szinonimái és szekvenciái
  • USERS_TABLES – a felhasználó saját táblák leírása
  • USERS_TRIGGERS – a felhasználó triggereinek leírása

Elosztott AB – adatbázisok olyan együttese, amelyeket külön-külön lehet kezelni, és ez által az információt megosztani.
Elosztott feldolgozás – több processzoron történik úgy, hogy egy közös eredményt kapjunk.
Elosztott lekérdezés – egy hálózat több csomópontjában elhelyezett AB-ban keresi az adatokat.
Előre görgetés (visszagörgetés) – amikor egy AB egy ROOLBACK parancs által visszakerül a tranzakció kezdeti állapotba.
Ellenőrzési pont – olyan pont, ahol a módosított blokkok az AB-ba íródnak. Egy ellenőrzési pont bekövetkezik, ha a változásnapló-állomány blokkok írásaink száma egyenlő lesz a LOG_CHECKPOINT_INTERVAL értékkel, vagy ha betelik egy on-line változásnapló-állomány.
Erőforrás – egy olyan logikai AB objektum, amit zárolni lehet. A felhasználó sorokat és táblákat, mint erőforrást tud zárolni.
Gyorsító tár – olyan ideiglenes terület, ahol a felhasználók által éppen feldolgozott vagy módosított adatbázisadatok helyezkednek el.
Partíciónált tábla – olyan tábla, amelynek a sorait kisebb azonos szerkezetű táblákba helyezhetjük.
Lokális (helyi) adatbázis – AB, amely a saját gépünken helyezkedik el.
Adatbázis (tárolt) objektumok – olyan elemek, amelyeket létrehozhatunk és tárolhatunk az AB-ban. Ezek lehetnek:

  • Táblák
  • Nézetek
  • Szinonimák
  • Indexek
  • Szekvenciák
  • Klaszterek
  • Oszlopok
  • Triggerek
  • Jogosultságok (privilégiumok)
  • Felhasználó-definiált adattípusok
  • Adatszótár
  • Szerepkörök
  • Távoli adatbázisok
  • Pillanatfelvételek
  • Versenyhelyzet (több felhasználó esetén).

Egyedi folyamat –az adatbázis-műveletek módja, amikor csak egyetlen felhasználó fér hozzá az AB-hoz.
Puffer (az AB-ban) – a felhasználók által éppen feldolgozott és módosított adatbázis-blokkok ideiglenes tárolási helye.
Példány – az erőforrások összegzése, ami az Oracle futásához és az AB eléréséhez szükséges.
SGA (Rendszer globális területe) – egy megosztott terület a fő memóriában, amelyben az Oracle működik a futása alatt.
Vezérlőállomány – adminisztrációs fájl, amely az AB rendszer indításához és futtatásához szükséges. A vezérlőállomány az adatbázishoz, és nem a példányhoz tartozik.
Init.ora – fájl, amely az AB rendszer paramétereit tartalmazza.
Szótár gyorsító-tár – egyike az SGA által tartalmazott adatszótár-információkat tartalmazó gyorsító-táraknak. Növeli a teljesítményt, mivel ezekre az adatokra gyakran van szükség.
PGA (program globális területe) – tartalmazza az aktuális folyamat adatait és a vezérlési információt.

Felhasználói és rendszer-adatok. Az AB-hoz tartozó adatfájlokban tárolódnak:

  • A rendszer-adatok
  • felhasználói adatok.

Rendszer-adatok azok az adatok, amelyekre az AB-nak a felhasználói adatok kezeléséhez és az AB működéséhez szüksége van.
A rendszer-adatok típusai:

  • Táblainformáció (a tábla mezőiről és adatok típusairól)
  • Területinformáció (az AB fizikai terület méretei)
  • Információ a felhasználókról (a felhasználó neve, jelszava, privilégiumai)
  • Információ az adatfájlokról (az z adatfájlokról számáról, helyéről, utolsó használat idejéről).

Változásnapló. A műveletek szekvenciális naplója, amely akkor használható, ha az AB tartalmát nem kell a lemezen felülírni. A változásnaplóra úgy tekinthetünk, mint egy tranzakciónaplóra.
On-line változásnapló. Az a változásnapló, amely még nem került archiválásra. Minden AB-ban kell, hogy legyen legalább két on-line változásnapló. Szükség esetén, az AB előző állapotát a változásnapló alapján vissza lehet állítani.
Archiválás. Az on-line változásnaplók adatainak megőrzése. Ezek az adatok a visszaállításhoz szükségesek. Puffer a változásnaplóban – a felhasználók által éppen feldolgozott és módosított változásnapló-blokkok ideiglenes tárolási helye.
On-line mentés – az adatok archiválása az AB működése közben. Ebben az esetben nem szükséges lecsatolni az AB-t.
Off-line változásnapló – az a változásnapló, amelyet az ARCHIVELOG módban használják, és ez azt is jelenti, hogy ez a naplóállomány archiválva van.
Visszagörgetés – a tranzakció változásainak figyelmen kívül hagyása.

Az ALTER DATABASE …ARCHIVELOG … és ALTER DATABASE …NOARCHIVELOG
parancsok a változásnapló-állományok alkalmazásának módját határozza meg. A parancsokban a teljes vagy részleges visszaállíthatóságát lehet megadni:

  • ARCHIVELOG <üzemmód> – teljes visszaállíthatóság,
  • NOARCHIVELOG – részleges visszaállíthatóság.

5.4. Oracle-folyamatok
Az Oracle olyan programokat tartalmaz, melyek Oracle-folyamatokat valósítanak meg.
Kliens – összefoglaló neve azon felhasználóknak, alkalmazásoknak, számítógépeknek, amelyek szolgáltatást, adatokat vagy feldolgozást igényelnek egy másik alkalmazástól vagy számítógéptől.
Fontosabb kliens (felhasználói) folyamatok:

  • SQL*Plus,
  • Oracle Forms,
  • Oracle Reports.

A szerver (kiszolgáló) folyamatok fogadják a kliensfolyamatok igényeit, és az igényeknek megfelelőjen kapcsolatot létesítenek az adatbázissal.
Az AB-t működtető folyamatok
Háttérfolyamatok végrehajtják és koordinálják az AB konkurens felhasználói folyamatokat. Az alap háttérfolyamatok:

  • ARCH (archiváló)
  • DBWR-folyamat – adatbázisíró, a megváltozott adatblokkok adatfájlba írását végzi
  • LGWR (naplóíró)
  • PMON-folyamat – folyamatvezérlő, ez a folyamat egy felhasználó hibája esetén végzi az adatbázis visszaállítását. Felszabadítja a felhasználó által lekötött erőforrásokat, és visszagörgeti a félbeszakadt tranzakciót.
  • SMON-folyamat (System MONitor Process) – rendszervezérlő, egy háttérfolyamat, amely visszaállítást és a nem használt ideiglenes szegmensek törlését végzi. Indításkor elvégzi a visszaállítást és a szükséges beállításokat.

Memóriastruktúrák
Az Oracle-rendszer kétféle memóriastruktúrát használ:

  • SGA (System Global Area) - a rendszer globális területe;
  • PGA (Program Global Area) – a program globális területe.

A SGA(Rendszer globális területe) – egy megosztott terület a RAM memóriában, amelyben az Oracle működik a futása alatt.
A PGA (program globális területe) az aktuális folyamat adatait és a vezérlési információt tartalmazza.
A SGA szolgál a felhasználói és háttérfolyamatok közötti kommunikációra is. A folyamatok működése alatt mindig létezik egy SGA és több PGA.

A SGA komponensei:

  • adatpuffer-gyorsítótár
  • szótár-gyorsítótár
  • változásnapló-puffer
  • SQL-terület.

A SGA méretét az init.ora paraméterei határozzák meg. Az init.ora – egy vezérlő fájl, az AB rendszer paraméter-fájla, amely olyan beállításokat és fájlneveket tartalmaz, amelyeket a CREATE DATABASE, STARUP, SHUTDOWN parancsok használnak.

Adatpuffer-gyorsítótár – tartalmazza a legutoljára használt adatbázisadatok blokkjait. Ahhoz, hogy egy felhasználói folyamat “lásson” egy adatot, annak be kell kerülni az adatpuffer-gyorsítótárba.
Szótár-gyorsítótár – egyike az SGA által tartalmazott adatszótár-információkat tartalmazó gyorsító-táraknak. Növeli a teljesítményt, mivel ezekre az adatokra gyakran van szükség.
SHARED SQL POOL – az SGA olyan területe, amely tartalmazza a szótár gyorsítótárát, és az elemzett SQL parancsok megosztott területét. A méretét az init.ora fájl SHARE_POOL_SIZE paramétere határozza meg.

Szegmensek
Szegmens egy tábla, index vagy klaszter által lefoglalt tároló terület meghatározására szolgál.
Ideiglenes szegmens – egy táblaterület azon része, amely SQL parancsok közbenső eredményeinek tárolására szolgál. Például, nagyméretű táblák rendezésére alkalmazza az Oracle.
Visszagörgető szegmens – egy olyan tároló terület egy táblaterületen belül, amely olyan tranzakció-információkat tartalmaz, amelyek segítségével egy visszagörgetésnél biztosítható az adatok integritása és olvasási konzisztencia.
Késleltetett visszaállító szegmens – olyan bejegyzéseket tartalmaz, amely nem alkalmazható a táblaterületre, mivel az off-line állapotban van. A bejegyzések csak azután lesznek alkalmazva, ha a táblaterület on-line állapotba kerül.

Táblaterületek (TABLESPACE)
Egy adatbázis egy vagy több táblaterületből és mindegyik táblaterület egy vagy több adatfájllából épül fel. Táblaterület – azon fájlok összessége, amelyekben az Oracle adatok tárolódnak. Egy AB az alapértelmezett SYSTEM táblaterületet és a felhasználó által létrehozott táblaterületeket használhat.
A táblaterület az adatállományok csoportosításának eszköze, és egy vagy több adatfájl együttese.

Példa. Egy tábla létrehozásakor a táblaterületet is lehet megadni:

  CREATE TABLE custmer (first_name VARCAHAR2(15),    ….) TABLESPACE users;

Az Oracle-ban alkalmazott táblaterületek:

  • System táblaterület (az AB rendszer táblái. Ezek a System01.dbf és más állományok)
  • Temp táblaterület - ideiglenes táblák;
  • Tools táblaterület - eszközök (Oracle Report);
  • Felhasználói táblaterületek;
  • Adat és index táblaterületek;
  • Visszagörgető táblaterület (ROOLBACK, v. RBS).

Az Adatbázisrendszerre úgy lehet tekinteni, mint egy példány és egy adatbázis együttesére.
A felhasználók fájlai a USERS táblaterületben kapnak helyet.
A táblaterületek alkalmazása lehetőséget arra ad, hogy:

  • a felhasználói adatokat elkülönítjük az adatszótártól;
  • egy alkalmazás adatait elkülönítjük egy másik alkalmazás adataitól;
  • különböző táblaterületek állományait különböző lemezeken tárolhatjuk;
  • egy táblaterületet lehessen nem aktív állapotba helyezni, és utána a többi táblaterületekkel folytatni a munkát;
  • egy táblaterületben a visszaállítási műveletet úgy lehessen végrehajtani, hogy a többi táblaterületek elérhetők legyenek a felhasználók számára.

Egy új táblaterület létrehozására a CREATE TABLESPACE parancsot alkalmazunk. Ha nem adjuk meg azt a katalógust, melyben akarjuk elhelyezni a táblaterület, akkor a helye az alapértelmezés alapján lesz meghatározva.

Példa.

  CREATE TABLESPACE NewTSpace 
   DATAFILE ‘d:\NewTSpace1.dbf’ SIZE 1M 
   DEFAULT STORAGE ( 
INITIAL 50K 
NEXT 50K
MINEXTENT 2 
MAXEXTENT 50 
PCTINCREASE 0) 
OFFLINE;

A létrehozott táblaterület egy fájlban van elhelyezve, melynek a mérete 1Mb, és a létrehozása után nem lesz aktív állapotban.

Állományok hozzáadása a táblaterülethez
Ezt a műveletet az ALTER TABLESPACE SQL paranccsal kell végrehajtani:

 ALTER TABLESPACE NewTSpace ADD DATAFILE ‘d:\NewTSpace2.dbf’ SIZE 3M;

Az AB adminisztrátor követheti a táblaterületek állapotát, és a hozzá tartozó objektumokat a következő paranccsal:

  SELECT tablespace_name, status FROM dba_tablespases ORDER BY  tablespace_name;

Ha a felhasználó a MANAGE TABLESPACE privilégiummal rendelkezik, akkor aktivizálhatja a táblaterületet:

   ALTER TABLESPACE táblaterület_név ONLINE;

A táblaterület aktív állapotának megszüntetése:

   ALTER TABLESPACE táblaterület_név OFFLINE;

A fájlokat és táblaterületeket lehet átnevezni. Például,

  ALTER TABLESPACE NewTSpace 
      RENAME DATAFILE ‘NewTSpace1’ TO ‘OldTSpace1’;

vagy

  ALTER DATABASE RENAME DATAFILE ‘File1’, ‘File2’ TO ‘File3’, ‘File4’; 

Ha a táblaterület off-line állapotban van, és a felhasználó DROP TABLESPACE privilégiummal rendelkezik, akkor a táblaterület törölhető:

   DROP TABLESPACE NewTSpace;

Ha a törlendő táblaterület olyan táblát tartalmaz, amelynek elsődleges kulcsa van, és más tábla az idegen kulcs alapján hivatkozik rá, akkor ezt a megszorítást is lehet törölni a CASCADE CONSTRAINTS paraméter alkalmazásával:

   DROP TABLESPACE NewTSpace CASCADE CONSTRAINTS;

Ez vonatkozik a táblákra is.

Például,

  DROP TABLE Test;  és DROP TABLE Test CASCADE CONSTRAINTS;** \\ 

A táblákat csak a tulajdonosa törölheti, vagy az a felhasználó, aki a DROP ANY TABLE privilégiummal rendelkezik.

Adatbázis adminisztrálása

Adatbázis létrehozása
Az adatbázis létrehozása – egy olyan folyamat, amelynek során az AB-t a kezdeti felhasználásra kész állapotba kerül. Az AB létrehozásának szükséges feltétele – szerver példányának létezése.
Példány – azok az erőforrások összegzése, amelyek szükségesek az Oracle futásához és az AB eléréséhez. Ha egy példány el van indítva és egy megnyitott AB hozzá van kapcsolva, akkor az AB-rendszer elérhető a felhasználó számára. Egyidejűleg több példány futhat az Oracle-ban.
Egy Oracle-példányhoz következő komponensek tartoznak:

  • adatbázis
  • saját SGA
  • külön kiszolgáló-folyamatok

Egy AB létrehozása több lépést igényel:

  • az inicializálási paraméterek létrehozása;
  • az új AB adminisztrátor-katalógus létrehozása;
  • szerver példányának létrehozása;
  • AB létrehozása (a CREATE DATABASE parancs alkalmazása);
  • az AB támogatására alkalmazott objektumok létrehozása;
  • az AB kiszolgáló sémák védelme;
  • hálózati fájlok létrehozása.

Az ORACLE_HOME gyökér-katalógus alapján meghatározhatjuk az elérési utakat a szerver programjaihoz. Az AB létrehozására az Oracle Database Configuration Assistant komponensét alkalmazzák. Ez a komponens egy fontos katalógust
…admin\AB_neve
hoz létre, amely tartalmazza az AB adminisztrátor munkájához szükséges fájlokat. Például, ha az AB neve test, akkor az létrehozza a
… \oracle\admin\test\ katalógust, amely a következő katalógusokat tartalmaz:
\bdump;
\cdump;
\create;
\pfile;
\udump

A create katalógusban olyan programok vannak, amelyeket az Oracle az AB objektumainak létrehozására alkalmazza.
A pfile katalógusban tárolódnak az AB konfigurálásához szükséges fájlok, például, az init.ora.
Miután a Database Configuration Assistant létrehozta az AB-t, ajánlatos a létrehozott CreateDatabase.sql script-et eltárolni a későbbi lehetséges AB módosításai miatt. Ennek a script-nek a tartalma lehet például:

  CREATE DATABASE orcl MAXINSTANCES 1 MAXLOGFILES 5 MAXLOGMEMBERS
      3 MAXDATAFILES 100 DATAFILE ’E:\|oracle\oradata \ orcl\ system01.dbf’ SIZE 250M;

Ha elindítjuk az SQL*plus komponenst, és hozzákapcsolódunk az AB-hoz, akkor az Oracle jelezni fogja, hogy egy üres példányhoz kapcsolódtunk:

  SQL> CONNECT SYS/change_on_install as SYSDBA
          Connected to an idle instance.

Ez azt jelenti, hogy a szerver már aktív, de az AB még nincs hozzákapcsolva. A következő parancs elindítja az AB-t: SQL> STARTUP NOMOUNT pfile=[<az elérési út>, <az init.ora állomány neve>];
Az AB létrehozása után még két SQL-scriptet kell végrehajtani: catalog.sql és catproc.sql. A catalog.sql szerkeszti az AB-szótár nézeteit és szinonimákat, a catproc.sql pedig olyan scripteket indít el, amelyek az AB működéséhez szükséges objektumokat hozzák létre.
Utána a pupbld.sql script által megszerkeszthetjük a profilok tábláit. Ezekre a táblákra akkor lesz szükség, ha szabályokat kellesz létrehozni, amelyek alapján a felhasználók megkapják a megfelelő profiljait.

Hálózati állományok konfigurálása
Ahhoz, hogy a SQL*Net komponens által az adatbázishoz a hálózaton keresztül lehessen hozzá férni, meg kell adni a megfelelő paramétereket a listener.ora és tnsnames.ors fájlokban.

Szegmensek
Az AB egyik legfontosabb komponense: a rollback szegmensek (visszagörgető szegmensek).
Az AB létrehozása után már létezik egy ilyen szegmens, amely a SYSTEM táblatérhez tartozik. Az Oracle ezt a szegmenset csak azokra a tranzakciókra alkalmazza, amelyek a SYSTEM táblatér objektumokkal hajtódnak végre.
Ezért szükség van még olyan ideiglenes rollback szegmensekre, amelyek alkalmazhatók más tranzakciók végrehajtására. A rollback szegmenset a következő paranccsal lehet létrehozni:

  CREATE ROLLBACK SEGMENT rbs_temp STORAGE (INITIAL 10K  NEXT 10K    MINEXTENTS 3    MAXNEXTENTS 121)
      TABLESPACE SYSTEM; 

A szegmenset aktív állapotba kell hozni a következő paranccsal:

      ALTER ROLLBACK SEGMENS rbs_temp ONLINE;  

Ez után létrehozhatjuk a tábla szegmenseket. Minimálisan a következő tábla szegmensekre van szükség:

  • TEMP – az AB idegleges szegmensek tárolására;
  • TOOLS – a saját fejlesztéshez szükséges program-eszköz tárolására;
  • UNDOTBS – a roolback szegmensek tárolása;
  • USERS – a felhasználók tábla területe (alapértelmezés szerint);
  • INDEX – a felhasználók indexelt tábla területe.

A TEMP és UNDOTBS tartalmazzák az AB működéséhez szükséges objektumait, a TOOLS, USERS, és INDEX – pedig a felhasználók objektumait.

AB indítása és megállítása
Amíg az AB nincs megnyitva, addig csak az AB adminisztrátor férhet hozzá az AB-hoz a Server Manager alkalmazásával. A Server Manager egy Oracle segédprogram, amelyet az AB adminisztrátor az AB karbantartására használ.
Mielőtt egy felhasználó egy példányhoz hozzá tudna férni, az adminisztrátornak bizonyos előkészítő műveleteket kell végrehajtani. Ezeket a műveleteket az ABA három formában alkalmazhatja, ez alapján három állapot lehetséges:

  • az AB a példányhoz van csatolva, de az AB még nincs megnyitva;
  • AB a példányhoz van csatolva, és az AB meg van nyitva;
  • az AB a példányhoz van csatolva, az AB meg van nyitva, és a példány indítása is megtörtént.

Az adatbázis csatolása után az elérhetővé válik az adatbázis-adminisztrátor számára.
Az adatbázis csatolása és megnyitása után az elérhetővé válik a felhasználó számára is.

Indítás – az a folyamat, amelynek során működni kezd egy példány, ha előtte megtörtént az AB csatolása és megnyitása. Az indítás után az AB már a felhasználó számára is elérhető lesz.
Kapcsolódás – olyan művelet, amelyben azonosítjuk magunkat a felhasználói nevünkkel és a jelszavunkkal, és utána beléphetünk az Oracle-rendszerbe.
Leállítás – egy példány és az adatbázis szétkapcsolása és a példány befejezése.
Lecsatolt adatbázis – olyan AB, amelyhez nincs csatolt példány, és ezért az nem nyitható meg és nem érhető el a felhasználó számára.
Lezárt adatbázis – olyan AB, amely össze van kötve egy példánnyal (az AB csatolva van), de nincs megnyitva.

A felhasználók csak akkor férhetnek hozzá az AB-hoz, ha már létezik a példány. Az AB tipikus állapota a megnyitott állapot. A szerver példány hozzáférhet azokhoz az adatbázisokhoz, amelyeknek a neve a kontrol-fájlban tárolódnak. A felhasználók ezekhez az AB fájlaihoz a példány által férhetnek hozzá.
Az AB megnyitása a

  STARTUP [záradékok]

paranccsal történik, melyben több záradék is alkalmazható.
Fontosabb záradékok:

  • RESTRICT – az AB-t csak az adminisztrátor érheti el;
  • NOMOUNT – az AB csatolása a példányhoz;
  • OPEN READ ONLY – az AB csak olvasásra való megnyitása;
  • OPEN READ WRITE – az AB mint olvasásra, mint írásra való megnyitása;
  • OPEN RECOVER – az AB visszaállítási célból való megnyitása;
  • PFILE = fájl_név – a megnyitandó AB neve.

A következő parancs végrehajtja az AB csatolását:

  ALTER DATABASE …MOUNT;

Ha az AB már csatolva van, akkor annak a megnyitása a következő ALTER paranccsal valósítható meg:

  ALTER DATABASE OPEN;

Példák.
A Test nevű AB csatolva lesz a példányhoz (de nem lesz megnyitva);

  STARUP NOMOUNT PFILE=e:\oracle\admin\Test\pfile\init.ora;

Az AB megnyitása –

  STARUP OPEN PFILE=e:\oracle\admin\Test\pfile\init.ora;

vagy

  STARUP PFILE=e:\oracle\admin\Test\pfile\init.ora;

A megnyitott AB-hoz csatlakozhat az a felhasználó, aki a CREATE SESSION privilégiummal rendelkezik.
Az AB-t a

SHUTDOWN

paranccsal lehet leállítani. Mielőtt az Oracle megállítaná az adatbázist, az megvárja, amíg az összes felhasználó kilép a rendszerből, és nem engedélyezi az új felhasználók belépését. Szükség esetén az AB-t hirtelen is lehet leállítani. Erre a

SHUTDOWN IMMEDIATE

parancsot kell alkalmazni.

Felhasználók adminisztrálása

Felhasználók létrehozása
A felhasználókat az AB adminisztrátor hozza létre. A felhasználók létrehozása:

  CREATE USER felhasználó IDENTIFIED BY jelszó
[DEFAULT TABLESPACE táblaterület] [PROFILE profil];
  CREATE USER felh_1 IDENTIFIED BY en_jelem DEFAULT TABLESPACE diakok;

Felhasználók törlése:\

  DROP USER felhasználó;
  DROP USER felhasználó CASCADE;  

A CASCADE opció esetén nem csak az adott felhasználó lesz törölve, hanem törlődnek „lépcsős” módon a felhasználó sémájához tartozó objektumok is.

A SYS és SYSTEM felhasználók

Egy új adatbázis létrehozásakor az Oracle létrehoz automatikusan a SYS és SYSTEM felhasználókat és felismeri a következő felhasználókat:

  • SYS
  • SYSTEM
  • DBSNMP
  • SCOTT

A SYS és SYSTEM – az AB adminisztrátorok az AB-rendszer installálásakor és inicializálásakor jönnek létre.
A SYS az adatszótár-táblák tulajdonosa, a jelszava, pedig change_on_install.
A SYSTEM – az adatszótár-táblák létrehozott nézetek tulajdonosa, és a jelszava – manager. Biztonsági okokból ezeket a jelszavakat egyszerre meg kell változtatni. Erre alkalmazhatjuk az

  ALTER USER <felhasználó_név> IDENTIFIED BY <jelszó>;

parancsot.
Például, a SYS jelszavának megváltoztatása:

  ALTER USER SYS IDENTIFIED BY< új_jelszó>;

Bejelentkezés
A felhasználók a rendszerbe való bejelentkezése (hozzáférés az AB-hoz) a CONNECT parancs által történik, amit legegyszerűbb az SQL*Plus-ból végrehajtani. Bejelentkezés az aktuális (alapértelmezésként megadott) AB-ba:

  CONNECT felhasználó/jelszó

Bejelentkezés egy adatbázis_1 nevű AB-ba:

  CONNECT felhasználó/jelszó@adatbázis_1

Profilok
Az erőforrásokat a felhasználók a profil által kapják.
Profilnak nevezzük azok korlátozások együttesét, amelyet egy felhasználó kaphat. Úgy is lehet fogalmazni, hogy a felhasználó bizonyos kvótát kap.
Kvóta – egy erőforráskorlát, amely az AB-felhasználók által elértető tárolási területét határolja be.
A CREATE PROFIL parancs az AB erőforrásainak felhasználására vonatkozó korlátokat vezet be. A felhasználónak a profilt a CREATE USER vagy az ALTER USER parancsokban lehet megadni. Például,

  CREATE PROFIL diakok LIMIT SESSION_PER_USER 10  CPU_PER_SESSION UNLIMITED \\ 
      CONNECT_TIME UNLIMITED; 

A LIMIT SESSION_PER_USER – a felhasználó egyidejűleg az SQL bejelentkezési számát korlátozza,
CPU_PER_SESSION – a felhasználható a CPU-időt korlátozza (UNLIMITED –nem korlátozza),
CONNECT_TIME – a kapcsolat teljes időtartamát korlátozza.

A profil törlése:

     DROP PROFIL diakok;

Kapcsolat leállítása (megszakítása)
Az AB adminisztrátornak joga van a felhasználót lekapcsolja (eltiltani) a rendszerről. Ezt az SQL ALTER SYSTEM paranccsal lehet végrehajtani. Például,

   ALTER SYSTEM KILL SESSION ‘9, 6021’;

9, 6021 – a session index (sid) és széria (serial#) száma. Ezeket a felhasználóhoz tartozó adatokat a v$session rendszer-táblából lehet lekérdezni:

    SELECT sid, serial# FROM v$session WHERE username =’Stud’;
SIDSERIAL#
96021
103274

Zárolás
Adatdefiníciós zárak – olyan zárak, amelyeket az Oracle az adatszótárba helyez el az AB objektumok (táblák, nézetek,…) struktúrájának változtatása közben úgy, hogy ezek a változtatások ne befolyásolhassák negatívan az AB adatait.
Következő zárak lehetnek:

  • Szótárműveleti
  • Szótár-definíciós
  • Tábladefiníciós

Adatzár – a parancsok végrehajtása alatt az adatokat zárolódnak automatikusan, vagy a LOCK paranccsal explicit módon a felhasználó is azt létrehozhatja az adatzárt.
Kizáró mód – olyan zárolási mód egy erőforráson, amely kizár minden más hozzáférést az adott erőforráshoz, csak a zár elhelyezője tudja megváltoztatni az erőforrást.
Kizáró zár – olyan zár, amely megengedi, hogy más felhasználó lekérdezze az adatot, de azt nem tudja megváltoztatni. Kizáró zár esetén más felhasználó semmilyen zárat nem helyezhet el ugyanarra az adatra.
Megosztott zár – más felhasználók egyidejűleg ugyanarra az adatra újabb megosztott zárat helyezhetnek el.
Rekordzárolás – lehetővé teszi azon szituáció elkerülését, hogy egy időben két felhasználó ugyanazt a sort módosítsa.
Sorszintű zárolás – a zárat nem egy táblára, hanem csak a módosítandó sorra helyezzük.
Konkurencia – ugyanazon adat több felhasználó általi egyidejű elérését jelenti. Az Oracle olyan szoftvert tartalmaz, melynek az a feladata, hogy minden felhasználó helyes adatokat kapjon és a változtatások megfelelő módon történjenek.
Megosztott módú zárolás – sorszintű zárolás. Ennél a módnál módosíthatók a sorok és nem az egész tábla kerül zárolásra.
Megosztott zár – más felhasználónak megengedi az adat lekérdezését, de a módosítását – nem.
Megosztott-módosító zárolás – más felhasználó számára lehetővé teszi a lekérdezést, és újabb zár elhelyezését.

ab/oracle.txt · Utolsó módosítás: 2021/07/24 14:05 szerkesztette: holovacs