Recenzija: Expert Oracle Database Architecture

Tuesday, 12.02.2008 – Dejan

Napokon sam ugrabio vremena da napišem neku novu recenziju, a ovaj put sam odabrao još jednu odličnu knjigu o Oracle bazi – “Expert Oracle Database Architecture“, čiji autor je fenomenalni i svima poznat – Tom Kyte.

Knjiga je namijenjena svima – kako programerima, tako i administratorima, bez obzira da li se radi o početnicima ili iskusnim znalcima. Tom je u svom već poznatom stilu “proof-by-example” detaljno objasnio mnoge stvari potrebne za shvatanje funkcionalnosti i unutrašnje strukture Oracle baze, a mnogi savjeti spadaju u “best practice” primjere.

Početnici će moći upoznati internu strukturu i komponente Oracle baze, zatim koji procesi rade u pozadini i za šta je koji proces zadužen. Osim toga, mogu saznati kako funkcionišu transakcije, konkurentni višekorisnički pristup podacima, particionisanje i paralelizam. Pored poglavlja o tabelama i indeksima, tu je i poglavlje o svim tipovima podataka u Oracle bazi (npr. jeste li znali da je PLS_INTEGER efikasniji od BINARY_INTEGER?), pa koga zanima čemu služi npr. TIMESTAMP WITH TIMEZONE nek se lati knjige. 😀

Oni iskusniji će možda pronaći neku korisnu informaciju o poboljšavanju sistema (performance tuning) mijenjanjem određenih init-parametara, zatim informacije o razvijanju aplikacija u RAC okruženju i vjerovatno još mnogo korisnih stvari.

Za mene su veoma korisna bila poglavlja o tabelama i indeksima, u kojima sam saznao kako mogu koristiti IOT  (Index Organized Table) i Cluster/Hash-Cluster/Hash-Cluster-Sorted tabele, a potom koji indeksi bi bili najefikasniji u određenim situacijama (npr. REVERSE index za datume ili BITMAP index za polja sa malim brojem različitih vrijednosti, npr. muško/žensko).

Knjigu najsrdačnije preporučujem i dajem joj zasluženu ocjenu 10.

  1. 6 Responses to “Recenzija: Expert Oracle Database Architecture”

  2. Hallo,

    kao prvo kompliment na dobroj stranici sa puno informacija osobito za ljude koji se bave oraclom.Mene interesira dali Vi imate iskustva sa kriptiranjem baza na oraclu 10gR2 i koje su predonsti i nedostatci.Cuo sam navodno da ljudi imaju problema s INDEXIMA.
    Srdacan pozdrav Tihac

    By Tihac on Sep 10, 2008

  3. Pozdrav Tihac,
    nisam upucen u neke probleme sa indeksima prilikom kriptiranja… Mozes li konkretnije opisati sta koristite i koje greske dobijate?

    Mi planiramo sad uvesti Database Vault, a za obicno kriptiranje podataka koristimo paket DBMS_CRYPTO sa HASHMD5.

    By Dejan on Sep 10, 2008

  4. Problem sa indeksima i kriptovanjem na 10g je da index range scan ne radi.

    U 11g sa kriptovanjem tabelspacea to je reseno.

    By Nebojsa on Sep 15, 2008

  5. Imam jedan problem trebam vratit, restorati bazu uz pomoc backupa na drugoj masini.Znaci ljudi su mi vratili backup od proslog mjeseca i sad to trebam restorati na drugom serveru koji je isti samo ima drugi naziv linux platforma, ,Koristim rman. Nisam nikad vracao bazu pa me malo strah kako to napraviti. Ako neko ima primjer bit cu mu zahvalan do smrti.
    Znci backup s produkcije je vracen na testni server, sad jos moram napraviti restore pomocu rmana na testnom serveru. Ostalo je sve isto. Trebam dobar primjer.

    By Drazen on Sep 19, 2008

  6. @Drazen: Kljucne rijeci su Full restore & recover.

    Osim backupa baze, treba ti backup controlfile-a i spfile-a (ili pfile-a). Ja sam to vec radio u praksi, a sve informacije sam nasao u sluzbenoj Oracle dokumentaciji i u knjizi “Oracle database 10g: RMAN Backup & Recovery” ( http://www.baze-podataka.net/2007/03/13/recenzija-knjige-oracle-database-10g-rman-backup-recovery/ ).

    Ako budem imao vremena i volje, napisacu ovdje na blogu primjer kompletnog postupka za full restore & recovery…

    By Dejan on Sep 19, 2008

  7. Kao sto Dejan kaze moras da imas bekap controlfilea i da si iskopirao rman bekap na istoj putaji gde je i kreiran
    (Moze i bez toga sa paketom dbms_backup_restore ali to bi bilo mnogo da se objesnjava)

    Uglavnom postupak je sledeci.

    1. Kreiraj init fajl za novu bazu

    2. startup nomount

    Ako imas backup controlfajla koji je napravljen sa
    ‘alter database backup control …’

    iskopiraj taj fajl na sve lokacije

    pa

    alter database mount

    Ako je controlfile u nekom od rman fajlova onda
    RUN
    {
    RESTORE CONTROLFILE FROM AUTOBACKUP;
    ALTER DATABASE MOUNT;
    }

    3. Sada ide restore

    RUN
    {

    # Izmeni imena za data fajlove i redo logove
    # Ako vrsis restore bez promene imena fajlova izbaci set newname komande
    SET NEWNAME FOR DATAFILE 1 TO ‘?/oradata/test/system01.dbf’;

    SET NEWNAME FOR DATAFILE 8 TO ‘?/oradata/test/users01.dbf’;
    SQL “ALTER DATABASE RENAME FILE ”/…/redo01.log”
    TO ”…/redo01.log” “;
    SQL “ALTER DATABASE RENAME FILE ”…/redo02.log”
    TO ”…/redo02.log” “;

    # restore database
    RESTORE DATABASE;
    #Switch samo ako si koristio set newname
    SWITCH DATAFILE ALL;

    }
    EXIT

    – Sada treba da se uradi recover

    4. Restore archive logs

    RUN
    {
    RESTORE ARCHIVELOG ALL;
    }

    5. Iz sqlplusa kao sysdba

    sql>recover database using backup controlfile until cancel;

    6. alter database ope resetlogs;

    By Nebojsa on Sep 23, 2008

Post a Comment