MySQL je systém řízení báze dat, který uplatňuje relační databázový model. Byl vytvořen švédskou firmou MySQL AB, kterou v současnosti vlastní Oracle Corporation. Hlavními autory jsou Michael řečený „Monty“ Widenius a David Axmark. MySQL je považováno za jednoho z nejúspěšnějších průkopníků dvojího licencování, je totiž dostupné pod bezplatnou licencí GPL i pod placenou komerční licencí.
MySQL je multiplatformní databáze, ve které komunikace probíhá pomocí jazyka SQL. Podobně jako u dalších SQL databází se jedná o dialekt SQL s různými modifikacemi.
MySQL má relativně vysoký podíl na v současnosti používaných databázích, protože je snadno implementovatelný, výkonný a volně šiřitelný. Často se nasazuje kombinace GNU/Linux, Apache, MySQL a PHP pro sestavení základního software webového serveru, takzvaná „technologie LAMP“.
Od svých počátků bylo MySQL optimalizováno s důrazem na rychlost, což vedlo ke kompromisům v podobě dostupnosti jen jednoduchých způsobů zálohování a toho, že dlouho nepodporovalo pohledy, triggery ani uložené procedury. V posledních letech došlo k doplňování těchto vlastností, vzhledem k tomu, že pro hlavní uživatele produktu, tedy programátory webových stránek, se jejich absence stala zásadní.
Architektura MySQL serveru
Architektura MySQL serveru se liší od některých jiných architektur databázových serverů. Nejsvrchnější vrstva v sobě obsahuje služby, které nejsou unikátní pro MySQL a zvládnou obsloužit většinu potřebných nástrojů klient/server, které závisejí na síti.
V další vrstvě se nachází kód pro rozbor, tedy parsing, analýzu, optimalizaci i pro veškeré zabudované funkce. V této úrovni je skryta veškerá funkcionalita, která je následně poskytována prostřednictvím úložných enginů.
Třetí z vrstev obsahuje samotné úložné enginy. Ty se starají o ukládání a získávání uložených dat. Server využívá ke komunikaci s úložnými enginy API.
Výhody použití MySQL
Jednoduchost použití. MySQL se snadno nainstaluje a díky široké škále nástrojů třetích stran, které lze do databáze přidat je nastavení implementace relativně jednoduché. Navíc se jedná o databázi, se kterou se relativně snadno pracuje. Dokud rozumíte jejímu jazyku, neměli byste narazit na příliš mnoho problémů.
Dostupná podpora. Přestože Oracle nemá příliš dokonalou historii, co se týče podpory zákazníků, podstata samotného MySQL, které začalo jako open source platforma, znamená, že existuje velká a aktivní komunita vývojářů a nadšenců, kteří dokážou pomoci s mnoha situacemi. To je způsobeno velkou popularitou řešení, která vedla k široké základně expertů.
Dostupnost. Na základě toho, na co potřebujete MySQL používat může implementace nabývat ceny v rozsahu od zadarmo po deset tisíc dolarů a více. Ve všech případech je MySQL cenově dostupnější, nežli většina ostatních možností na trhu, pomineme-li open source software.
Průmyslový standard. Přestože popularita MySQL v posledních letech poklesla, stále se jedná o jeden z nejpoužívanějších databázových systémů na světě. Je kompatibilní téměř s každým operačním systémem a je považováno za průmyslový standard.
Nevýhody použití MySQL
Stabilita. Podle Digital Ocean má MySQL spíše nižší spolehlivost nežli konkurenční databázová řešení. Tyto problémy se stabilitou souvisí s tím, jakým způsobem řeší některé funkce, jako jsou například reference, transakce nebo auditing. Přestože je databáze i tak naprosto bezproblémově použitelná, v některých specifických případech se může jednat o důvod zvolit jiné řešení.
Výkon. Přestože je MySQL vybaveno tak, aby si poradilo téměř s jakýmkoliv objemem dat, má sklony k tomu se zaseknout, pokud je spuštěno příliš mnoho operací najednou. Tato relativně horší výkonnostní škálovatelnost znamená, že pokud hledáte řešení s vysokou mírou konkurenčních úrovní, je pravděpodobně vhodnější poohlédnout se po jiné alternativě.
Vývoj není komunitní. Rychlost vývoje je pomalejší, protože není tažen komunitou. Od té doby, co bylo MySQL převzato Oraclem se vývoj rapidně zpomalil.
Závislost na addonech. Některé často využívané funkce je možné použít jen za pomoci přidaných aplikací a addonů.