Maturitní otázka č. 10

10. Databáze a jejich implementace v MySQL

1. Co je MySQL a kde se uplatňuje

MySQL je jeden z celosvětově nejpopulárnějších open-source systémů pro správu relačních databází (RDBMS). V současnosti je vyvíjen a podporován společností Oracle. Je známý svou obrovskou rychlostí, spolehlivostí a tím, že je k dispozici zdarma.

2. Databázový model v MySQL

V MySQL se uplatňuje výhradně Relační databázový model. Znamená to, že se všechna data fyzicky i logicky ukládají do tabulek skládajících se z řádků a sloupců, které propojujeme pomocí primárních a cizích klíčů za účelem dodržení referenční integrity (aby např. neexistovala objednávka přiřazená k neexistujícímu zákazníkovi). Přestože moderní verze MySQL umí okrajově ukládat i formát JSON (čímž se trochu dotýká NoSQL dokumentového modelu), jádro a hlavní síla systému zůstává striktně relační.

3. Architektura MySQL a jazyk

4. Souvislost se souborovým systémem

Databázový systém (DBMS) neleží někde ve vzduchoprázdnu, ale v konečném důsledku musí využít běžný souborový systém operačního systému (např. NTFS ve Windows, ext4 v Linuxu). Rozdíl je v abstrakci.

Zatímco obyčejný uživatel by data ukládal do souboru zakaznici.txt a musel by sám programovat složité vyhledávání a řešit, co se stane, když soubor otevřou dva lidé naráz, SŘBD to dělá za něj. MySQL si na pevném disku vytvoří své vlastní binární soubory (např. využívající úložný engine InnoDB - soubory s koncovkou .ibd). Databázový server s těmito soubory manipuluje naprosto exkluzivně, udržuje nad nimi transakční logy a indexy pro rychlé vyhledávání. Programátor tak nikdy k datům nepřistupuje jako k souborům na disku, ale komunikuje výhradně abstraktně přes SQL dotazy. Souborový systém poskytuje úložný prostor pro bity a bajty, databázový systém tomuto prostoru dává logiku, formát a ochranu.

5. Základy práce v phpMyAdmin (Praktická část)

Závěrečná část je praktická ukázka v online grafickém prostředí phpMyAdmin, které slouží k vizuální správě MySQL databáze přes webový prohlížeč (odpadá nutnost psát příkazy do terminálu). Komisi je vhodné slovně popsat postup (a demonstrovat jej):

Dokument 28 – Aktivní webovky, redakční systém

Aktivní webovky, redakční systém