Adatbázisok laboratórium - 1. Oracle

A VIK Wikiből
(Szoftver labor 5. - 1. Oracle szócikkből átirányítva)


Oracle kliens telepítése linux alá

Elméleti összefoglaló

SzgLab5OracleElmelet a

-- lianna -- 2013.04.15.

Kiskérdések

  • Mi az adatbázisok legnagyobb logikai tárolási egysége?
  • Melyek a legfontosabb felhasználói objektumok? Soroljon fel legalább hármat!
  • Mi a különbség a táblák és a nézetek között?
  • Hány szegmenst használ az Oracle 9i, soroljon fel legalább 2-őt.
  • Sorolj fel min. 3 Oracle terméket és mondd el mire jók!
  • Milyen adatok kellenek egy Oracle szerver eléréséhez?
  • Mi az az SGA?
  • Mit takar a tranzakció fogalma?
  • Mi az az extent?
  • Mi az Oracle kétlépcsős jogosultságkezelésének lényege?
  • Mi a különbség a CHAR(n) és VARCHAR2(n) között?
  • Mi az a Data Dictionary?
  • Hogyan lehet korlátozni, hogy egy adott felhasználó mekkora fizikai területet foglalhat le? (vmi ilyesmi)
  • Mi a PL/SQL?
  • Milyen táblahelyek vannak, soroljon fel hármat!
  • Miből áll egy Oracle példány?
  • Mik a szerepek (role) és mire használjuk őket?
  • Mi a NET8 protokoll?
  • Hogyan lehet az Oracle adatait SQL-lel kinyerni?(valami nagyon hasonló)
  • Mire használja a rendszer az adatszegmenst?
  • Milyen jogosultsággal lehet egy Oracle példányt elindítani?
  • Miért kell két redo logot nyilvántartani egy rendszerben?
  • Mi a számláló (Sequence)? Mire használná?

-- Peti - 2006.02.27.-- adamo - 2006.02.28. -- Daniel - 2007.02.22. -- Nord - 2008.02.27. -- Velias - 2009.02.27. Lacas (vita) 2016. február 28., 21:32 (UTC)

Tapasztalatok

  • Ha SQL Developert használtok, és a lekérdezéseitek nem adnak vissza semmit, akkor jobb klikk a kapcsolatra és Reconnect (valami miatt megszakadt a kapcsolat, csak a kliens ezt nem jelzi)
  • A kliens alapértelmezetten "ÉV-HÓ-NAP" formátumban adja meg a dátum mezőket. A csatlakozás elején érdemes kiadni a következő utasítást, hogy nagyobb pontossággal látszódjanak ezek a mezők: ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD hh24:mi:ss';
  • Előfordulhat, hogy bizonyos lekérdezések futtatások találkozni fogtok néhány "furcsa" bejegyzéssel. Az esetek 95%-ban nem ti rontottatok el valamit, emiatt ne kezdjetek többször újra egy feladatot. Az érdeklődöbbeknek ajánlom, hogy járjanak utána ezeknek a furcsaságoknak, ha idejük engedi - sokat lehet ezekből tanulni (tényleg).

--Mamu (vita) 2015. március 2., 09:33 (UTC)

  • Ha sárga felkiáltójel mellett azt írja ki, hogy "You have partially deleted columns", azt azt jelenti, h lejárt a session.
  • A dátumban a hónapot a kliens formátumában lehet megadni, pl.: Júl.
  • Ha JOIN után az első tábla id-je szerint GROUP BY-olunk, akkor nyugodtan fel lehet sorolni a GROUP BY-ban az első tábla többi oszlopát, mert ha az id különböző, akkor a többi is az lesz, és így legalább be lehet írni a SELECT után ezeket az oszlopneveket is.

-- kovi - 2006.02.24.

  • Windows alá csak olyan (rendszergazda jogokkal bíró) userrel telepítsétek, amely nevében nincs ékezetes karakter és szóköz, mert különben az SQLLogot nem fogja tudja kiírni a lemezre (ha minden igaz). A rendszergazda jogokra mindenképp szükség van (ha minden igaz:).
  • Dátumra példa: 01-Dec-2001 12:10, 01-Máj-2001 12:10, stb. Használható a TO_DATE() függvény is, pl.: to_date('20020315', 'yyyymmdd'), bár nekem a tábla feltöltésénél nem nagyon akarta elfogadni.
  • A jegyzőkönyvbe beszúrandó képeket az RTF bitmap-ként tárolja, így előfordulhat, hogy a beszúrt 100KiByte-os JPG esetén 400KiByte-al nő a fájl mérete. Érdemes csökkenteni a színek számát, amennyire csak lehet, illetve kivágni a kép széléről a felesleges sallangokat. Na meg így felesleges JPG-be menteni a képernyőfelvételt, simán lehet maradni a BMP-nél legalább a minőség megmarad, nem rontja el a ki-, és betömörítés.
  • Képekhez még: "Nincs odaírva kötelezően a kép a jegyzőkönyvbe, csupán javaslat egy megoldási módra."
  • Lusta user megoldás dátumokhoz: úgy generálod a date-eket hogy beírod, hogy sysdate +/- amennyi napot akarsz. (levlistről)

-- palacsint - 2006.02.24.

FAQ

Gyakran ismételt kérdések gyűjtőhelye, melyek a laborok során jelentkeznek, főleg technikai jelleggel. (_Például: Oracle kliens telepítésének problémái, dátum formátum, stb._)

A konkrét feladatok megoldásai nem tehetők közzé se itt, sem máshol!

0. Oracle kliens telepítési buktatók

[Forrás: https://db.bme.hu/info/szglab5]

  • Windows XP alatt rendszergazda jogokkal kell telepíteni (szolgáltatást (service) hoz létre és a registry is módosulni fog).
  • Van, ahol a Java miatt akadnak gondok, ilyenkor a Sun Microsystems honlapjáról töltsük le a frissebb változatot.
  • Ha a kliens "elfelejti" a naplózási beállításokat, akkor annak valószínű oka, hogy az $ORACLE_HOME/sysman/config/dbappprf.properties fájl nem írható
  • Ha a kliens "elfelejti" a konfigurált adatbázis kapcsolatokat, akkor annak valószínű oka, hogy az $ORACLE_HOME/sysman/config/pref/ könyvtárban nem tud létrehozni a felhasználó nevéből képzett néven .crd fájlt.
  • A telepítő esetében a célkönyvtár nem tartalmazhat szóközt. Ezen persze lehet segíteni akkor, ha valaki az állomány DOS kompatibilis (8+3) nevét írja be. Az adott könyvtár és fájl DOS kompatibilis neve parancssorban kiadott DIR /X utasításra megjelenik. (Pl. a "C:\Program Files" DOS kompatibilis neve jellemzően -- de nem mindig -- Progra~1.) Ha egyszer elszúrtuk a beírást, és ezzel a telepítést nem tudjuk elkezdeni, akkor a C:\Program Files\Oracle könyvtárát le kell törölni, itt tárolja a telepítéseknek minden beállítását, majd kezdjük az egészet elölről. Telepítés után ezt a könyvtárat sose töröljük(!).
  • SQL Logger elhasal, ha a felhasználó nevében szóköz van, ezért az ilyen nevekre figyeljunk, ilyen neveket ne használjunk. Amennyiben a felhasználó nevében eredetileg szóköz volt, nem elegendő megváltoztatni a nevét. Egy új felhasználót kell létrehozni eredendően ékezet és szóközmentes névvel!
  • Régebbi kliensek esetében előfordul, hogy a jelszót nem idézőjelek között küldi el a kliens a szerver felé. Ha így van (jelszóváltásnál a "Show SQL" bekapcsolásával ez látható), akkor a jelszó nem tartalmazhat speciális (vezérlő) karaktereket, így pontot (.), és-jelet (&), kukacot (@), valamint idéző- és aposztrófjeleket, valamint nem kezdődhet számmal. Telepítésnél még mindig a régi klienselemeket használja az Oracle, így admin jelszóra ezek a korlátozások érvényesek.

1. Oracle

[Eff Péter konzi listára küldött levele alapján]

  • Annak ellenére, hogy bekapcsolom az logolást, elfelejti ezt a beállítást az Oracle kliens
    • Ne csak felhasználónevet változtass, hanem egy új felhasználót hozz létre, aminek a nevében nincs sem szóköz, sem ékezet.
  • Az jegyzőkönyv (rtf) fájl mérete max. 400kb-os lehet
    • Lehet nyugodtan nagyobb is, de ne legyen 50megás. Fekete-fehér (monochrome) és 16 színű körbevágott bmp képek használata javasolt.
  • A következő hibát kapom folyton a feltöltésnél: "A feltöltött állomány típusa mindenképp application/zip, application/x-zip-compressed vagy application/octet-stream kell legyen! Nem tudtam elmenteni a feltöltött application/x-zip típusú fájlt!"
    • Firefoxban mimeTypes.rdf törlése, vagy Internet Explorerrel kell feltölteni.
  • Dátum típusú mezőkbe adatbevitel
    • SQL-ben: to_date('2009-01-15', 'YYYY-MM-DD')
    • Enterprise Manager Console-ban: "15-jan. -2009" vagy "15-január-2009" formátumokban általában, de a "Show SQL" gombra kattintva látható, hogy milyen formátumot fog használni a to_date függvénynél, így annak megfelelően kell a dátumot is megadni
  • A rendszer kidobott mielőtt COMMIT-ot adhattam volna ki
    • A rendszer pmon folyamata adott időközönként ellenőrzi az adatbázist és ekkor például feloldja a zárak is. (Az adott időköz 30-60perc lehet.)
  • A jelszó megadása után bezáródik az Enterprise Manager Console ablaka
    • Ha Windows Vista-t használsz, akkor a Enterprise Manager Console-t adminisztrátorként futtasd (jobb kattitás -> Run as administator)
  • Oracle10g kliens telepítésnél javítócsomag probléma: "The system is not at the correct Service Pack level for installing \\ Recommendation: Install the recommended Service Pack."
    • A jobb oldalon van egy jelölő négyzet, azt pipáld be, akkor "User verified" állapotú lesz (vagyis vállaljuk, hogy szerintünk jó javítócsomag van fenn), és így folytatható a telepítés.
  • Kapcsolódási adatok a szerverhez
    • Szerver címe: rapid.eik.bme.hu
    • SID: szglab (ha nem jó lehet még SZGLAB5.WORLD, illetve az szglab/szglab5 és a world valamilyen kombinációja)


-- Tommey - 2009.02.27.