Co je MySQL? Jak MySQL funguje?
MySQL je celosvětově nejoblíbenější open source systém pro správu relačních databází (RDBMS), který používají společnosti Facebook, Google, Adobe, Alcatel Lucent a Zappos, a mnoha online weby/aplikacemi.
Je vyvinut, distribuován a podporován společností Oracle Corporation. Je to multiplatformní, výkonná, flexibilní a rozšiřitelná relační databáze, která je založena na SQL (Structured Query Language) standardizovaném jazyce používaném k vytváření a manipulaci s databázemi.
Nejnovější verze MySQL (verze 8.0 v době psaní tohoto článku) přichází s podporou NoSQL („Nejen SQL ”) databáze dokumentů. Lze jej nainstalovat do Linuxu, macOS a dalších operačních systémů podobných UNIXu a Windows.
Stáhněte si MySQL
Databázový software MySQL je open source, používá GPL (GNU General Public License). Důležité je, že je nabízen ve dvou různých edicích: open-source MySQL Community Server, který si můžete stáhnout, získat přístup ke zdrojovému kódu a používat jej zdarma, a proprietární MySQL Enterprise vydání a další komerční produkty, které vyžadují roční předplatné a zahrnují profesionální podporu a mnoho dalších výhod.
MySQL se používá pro širokou škálu účelů, včetně webové databáze (nejběžnější použití), datových skladů, elektronického obchodování a protokolovacích aplikací. Je to jeden z běžně instalovaných softwarů pro nastavení LAMP (Linux + Apache + MySQL + PHP) nebo LEMP (Linux + Engine-X + MySQL + PHP ) zásobník používaný pro vývoj webu a hostování online systémů pro správu obsahu, jako jsou WordPress, Magneto, Joomla, Drupal< a mnoho dalších. Kromě PHP podporuje také mnoho dalších jazyků včetně Perl, Node.js, Python a tak dále.
Podívejte se na tyto související průvodce nastavením vaší aplikace s databází MySQL v systému Linux.
- Jak nainstalovat LAMP Server na CentOS 8
- Jak nainstalovat LEMP Server na CentOS 8
- Jak nainstalovat LAMP Stack pomocí PhpMyAdmin v Ubuntu 20.04
- Jak nainstalovat LEMP Stack pomocí PhpMyAdmin v Ubuntu 20.04
- Jak nainstalovat WordPress s Apache v Ubuntu 20.04
Jak MySQL funguje?
Jako většina systémů pro správu databází má MySQL architekturu klient-server a lze ji používat v síťovém prostředí. Serverový program je umístěn na stejném fyzickém nebo virtuálním systému, kde jsou uloženy databázové soubory, a je zodpovědný za veškeré interakce s databázemi.
Různé klientské programy, jako jsou nástroje MySQL pro správu databází nebo jakékoli aplikace napsané v jiných programovacích jazycích, se mohou připojit k serveru a zadávat databázové požadavky. Server zpracovává požadavky klientů a vrací výsledky zpět klientovi.
Klient může být buď na stejném systému jako server, nebo na vzdáleném hostiteli a odesílat databázové požadavky na server přes síť nebo internetové připojení. Důležité je, že server MySQL musí být spuštěn, aby se k němu klienti mohli připojit.
Klíčové vlastnosti MySQL
MySQL používá vícevrstvý serverový design s nezávislými moduly. Server je vícevláknový, víceuživatelský, škálovatelný a robustně navržený pro kritické produkční systémy s velkým zatížením. Poskytuje transakční i netransakční úložné moduly a podporuje přidávání dalších úložných modulů.
- MySQL používá velmi rychlé tabulky B-stromu s kompresí indexů, velmi rychlý systém přidělování paměti na bázi vláken a provádí velmi rychlá spojení pomocí optimalizovaného spojení vnořených smyček.
- Podporuje mnoho datových typů, jako jsou celá čísla se znaménkem/neznaménkem, typy s plovoucí desetinnou čárkou (float a double), char a varchar, binární a varbinární, blob a text, datum, datum a čas a časové razítko, rok, množina, enum a prostorové OpenGIS typy.
- MySQL také podporuje redundanci dat a vysokou dostupnost (HA) prostřednictvím replikace master-slave, víceuzlového clusteringu a zálohování a obnovy/obnovy. Nabízí širokou škálu typů a strategií zálohování, ze kterých si můžete vybrat metody, které nejlépe vyhovují požadavkům vašeho nasazení.
- Mezi jeho bezpečnostní funkce patří správa uživatelských účtů a řízení přístupu, ověřování na základě hostitele, šifrovaná připojení, několik komponent a pluginů (jako jsou ověřovací pluginy, pluginy pro kontrolu připojení, komponenta pro ověřování hesel a mnoho dalších), které implementují zabezpečení, stejně jako FIPS. (Federal Information Processing Standards 140-2 (FIPS 140-2)) režim na straně serveru, který se vztahuje na kryptografické operace prováděné serverem.
Kromě toho můžete také zajistit další zabezpečení tím, že budete dodržovat osvědčené postupy zabezpečení MySQL/MariaDB pro Linux. Ale jako vždy se ujistěte, že jste implementovali dobré zabezpečení sítě a serveru, abyste zajistili všestranné zabezpečení databázového serveru.
Klient a nástroje MySQL
MySQL se dodává s několika klientskými programy, jako jsou oblíbené nástroje příkazového řádku: mysql, mysqladmin a mysqldump pro správu databází. Pro připojení k serveru MySQL mohou klienti používat několik protokolů, například sokety TCP/IP na libovolné platformě nebo doménové sokety UNIX na systémech UNIX, jako je Linux.
Chcete-li se připojit a spouštět příkazy MySQL z jiného jazyka nebo prostředí, existují konektory MySQL založené na standardech (které poskytují připojení k serveru MySQL pro klientské aplikace) a rozhraní API pro většinu oblíbených programovacích jazyků (k poskytování nízkoúrovňového přístupu ke zdrojům MySQL pomocí buď klasický protokol MySQL nebo protokol X).
Některé z oblíbených konektorů a API zahrnují ODBC (Open Database Connectivity), Java (JDBC – Java Database Connectivity), Python, PHP, Node.js, C++, Perl, Ruby a nativní C a vestavěné instance MySQL.
Následující články o MySQL budou užitečné:
- Jak nainstalovat nejnovější MySQL 8 na Debian 10
- 15 užitečných tipů pro ladění a optimalizaci výkonu MySQL/MariaDB
- Užitečné tipy pro řešení běžných chyb v MySQL
- Jak resetovat heslo root v MySQL 8.0
- Jak změnit výchozí port MySQL/MariaDB v Linuxu
- 4 Užitečné nástroje příkazového řádku pro sledování výkonu MySQL v Linuxu