ÚVOD / Studijní obory / Sylaby / Vývoj a administrace databáze Oracle

Vývoj a administrace databáze Oracle

Cílem předmětu je poskytnout studentům přehled o postupech administrace databázového serveru Oracle spolu se základy vývoje aplikací na straně databáze v jazyce PL/SQL. Studenti se v rámci výuky učí vytvářet a spravovat základní struktury databáze Oracle 11g a programovat jednoduché programy v jazyce PL/SQL.

Sylabus předmětu

  1. Úvod do RDBMS Oracle - Základní informace o průběhu kurzu a probírané látce. Úkoly administrátora RDBMS Oracle. Architektura RDBMS Oracle. Pojmy databázová instance a databáze. Části instance a databáze. Postup zpracování příkazu databází. Zajištění read consistency.
  2. Plánování a instalace RDBMS Oracle - Požadavky na databázovou infrastrukturu. Plánování zajištění dostupnosti a požadovaného výkonu. Koncept grid computing. Příprava a vlastní instalace RDBMS Oracle 11g. Specifika instalace dle použitého OS. Tvorba databáze v single-instance prostředí. Datový slovník.
  3. Správa instance a struktur pro ukládání dat - Postup spouštění a zastavování databází. Konzistentní stav databáze. Fyzická struktura databáze. Sizing databáze. Plánování a vytváření tabulkových prostorů (tablespaces). Důsledky fyzické konfigurace databázové struktury pro výkon. Konfigurace Oracle Enterprise Manageru. Sledování činnosti DB Instance.
  4. Tvorba a správa uživatelů - Vytváření uživatelů, přidělování oprávnění pro uživatele, tvorba rolí a profilů. Vytváření databázových objektů uživateli. Systémová a objektová oprávnění. Přístup uživatelů k databázi – konfigurace Oracle NET. Konfigurace procesu oracle listener. Konfigurace dedicated vs. Shared server (connection pooling na straně databáze).
  5. Tvorba databázových objektů - Zanková sada databáze. Druhy a vhodnost využití databázových objektů (tabulek, indexů, clusterů) pro různé situace. Volba vhodných datových typů. Heap table vs. Index-organized table. Druhy, použití a tvorba indexů. Způsoby návrhu indexů. NULL hodnota ve vztahu k indexu a pozdějšímu update. Sequence.
  6. Tvorba záloh a obnova databáze - Možné havárie databázového prostředí a způsob zotavení. Metody zotavení z chyb uživatelů, poruch hardwaru a pádu operačního systému. Druhy záloh a postup jejich vytvoření, postup obnovy databáze.
  7. Úvod do jazyka PL-SQL - Specifika vývoje databázových aplikací. Druhy programových bloků jazyka PL/SQL a vhodnost jejich využití. Způsob vykonávání PL/SQL programů serverem Oracle. Druhy a způsob deklarace proměnných, komentování kódu. Volání DML příkazů z PL/SQL.
  8. Větvení programu, řídící struktury - Význam jmenných konvencí v PL/SQL. Použití příkazů jazyka SQL v PL/SQL. Psaní podmínek a cyklů v PL/SQL. Vnořování bloků PL/SQL.
  9. Kompozitní datové typy a kurzory - Deklarace a význam kompozitních datových typů. Použití kolekcí. Kolekce jako asociativní cache. Explicitní kurzory, jejich význam a úskalí. Bulk operace a jejich význam pro výkon PL/SQL programů.
  10. Výjimky, tvorba procedur a funkcí - Druhy, deklarace a vyvolání výjimek. Postupy ošetření výjimek. Vytváření procedur a funkcí, druhy jejich parametrů.
  11. Packages -  Význam packages, jejich využití pro zlepšení správy paměti a přetěžování procedur. Postup vytváření packages. Využití hlaviček packages bez jejich implementace. Oraclem předdefinované packages. Volání dynamických SQL dota
  12. Design PL/SQL programů -  Nativní vs. Interpretované PL/SQL. Deterministické a nedeterministické funkce. Autonomní transakce a jejich využití. Procedury vykonávané s právy vlastníka/volajícího. Použití BULK operací

Organizace výuky

Prezenční forma

Výuka probíhá ve 12 přednáškách a 12 seminářích po 1,5 hod.

Kombinovaná forma

Výuka probíhá ve 4 tutoriálech po 3 hod.

Doporučená literatura

Základní učební texty a pomůcky

  • Učební texty k předmětu Vývoj a administrace databáze Oracle (intranetová učební pomůcka), Unicorn College
  • GREENWALD, R., STACKOWJAK, R., STERN, J.: Oracle Essentials: Oracle Database 12c. O'Reilly Media, 2012.
  • ABRAMSON, I., ABBEY, M., COREY, M.: Oracle Database 11g A Beginner's Guide. McGraw Hill Professional, 2008. 

Doplňující a rozšiřující učební texty

  • KYTE, T.: Effective Oracle by Design, Oracle Press, 2003
  • FeuersteinS.: Oracle PL/SQL Best Practices, O'Reilly Media, 2007.
  • LACKO, L.: Oracle - Správa, programování a použití databázového systému, Brno, Computer Press, 2002.