NOC online · 24/7Longview, TX · +1 323 412 0665
KinetikatechServers · Security · Websites
CS

Porovnání databází

MySQL: Výchozí databáze, stále vydělává

MySQL je databáze, na které běží většina webu, ne proto, že by byla vzrušující, ale proto, že je předvídatelná: jádro InnoDB ACID, replikační model, kterého se dotkl každý administrátor, a ekosystém panelů, pluginů a předpokladů aplikací postavených na vrcholu. Vážná práce spočívá ve výchozí konfiguraci, disciplíně replikace a znalosti, kde verze 8 skutečně získává svou složitost.

Klíčové body

  1. InnoDB je úložný engine, na kterém záleží: seskupené primární klíče, zamykání řádků a obnovení bezpečného zopakování; starší články MyISAM, které doporučují výměny enginu, obvykle předcházejí realitě, že moderní zásobník MySQL je z 99 % InnoDB a je pro něj spokojenější.
  2. MySQL 8 si vysloužil bolest při upgradu skutečnými funkcemi: funkcemi oken, CTE, vylepšeným EXPLAIN FORMAT=TREE, zpracováním JSON třídy Hermes prostřednictvím JSON_TABLE; toky, které předpovídaly marketing fork MariaDB jako první, se značně zúžily.
  3. Replikace je místo, kde se dělají nebo lámou kariéry: Nastavení založená na GTID umožňují spravovat topologii (řetězec, více zdrojů), semi-synchronizaci jako kompromis mezi výkonem a trvanlivostí a nelze předpokládat, že je třeba měřit zpoždění čtení-repliky (kontroly ve stylu pt-heartbeat nebo latence založená na performance_schema).
  4. Práce na výkonu začíná pomalým protokolem dotazů plus performance_schema: přehledy příkazů, použití indexu a indexování podle schématu porazí každý magický seznam parametrů my.cnf; Velikost bufferu vs pracovní sada je skutečným knoflíkem, na kterém záleží.
  5. Zálohy, které obnovují: pracovní postupy založené na výpisu stavu paměti (mysqldump --single-transaction) pro malé nemovitosti, fyzické snímky (třída Percona xtrabackup) pro rychlost a obnova v určitém okamžiku vždy testována podle skutečného plánu výpadků, nikoli podle mřížky dokumentace.
  6. Tam, kde výchozí stav MySQL stále vítězí: aplikační ekosystémy to předpokládají, panely to dodávají (často vyměněné za MariaDB), provozovatelé cloudu to poskytují levně a ekosystémy pluginů CMS (zejména WordPress) s tím nejprve testují; zůstat ve výchozím nastavení znamená zůstat testován.

Poznámka z terénu

Nejlepší výkon MySQL, jaký jsem kdy viděl, nebyl maraton ladění konfigurace: byl to vývojář, který smazal tři indexy, které bojovaly s jednou OLTP tabulkou o propustnost zápisu. Un-benchmarking začíná v pomalých přehledech dotazů, nikoli v příspěvcích na blogu.

Časté dotazy

MySQL 8 nebo MariaDB pro nový projekt?

Nové projekty bez omezení ekosystému: MariaDB je skvělé výchozí nastavení, ale MySQL 8 má ekosystém dodavatele, bezpečnostní záplaty a replikaci. Porovnejte funkce, které skutečně potřebujete, přečtěte si náš článek mysql-vs-postgresql pro relační otázku.

Vyžaduje přepnutí stávajícího MySQL na MariaDB změny?

Přechod na nižší verzi napříč verzemi binárního formátu je nejtěžší: MariaDB nečte datový slovník MySQL 8. Logická migrace (výpis/načtení) funguje, záměna pluginu potřebuje inventář před závazkem.

Polosynchronizovaná replikace: stojí za to zpoždění?

Snižuje ztrátu dat při tichém převzetí služeb při selhání; klasickým pravidlem je jedna ze dvou voleb konzistence/výkonu s async jako základní linií. Pro většinu přetížených úloh je správnou odpovědí polosynchronizace plus testované převzetí služeb při selhání, nikoli úplná synchronizace.

Jak zabráním tomu, aby jediný pomalý web zabil krabici?

Zdroje pro jednotlivé uživatele (CloudLinux db_governor na sdílených zásobníkech, omezení proxy dotazů vpředu) plus disciplína pomalých dotazů; databáze sama o sobě nemá žádný bezpečnostní pás, pokud mu ho prostředí nedá.

Jak Kinetikatech pomáhá s porovnání databází

Upřímně, většina týmů se na nás obrací poté, co to nejdřív zkusila sama: Možnosti databázového stroje pro hostování pracovních zátěží ve srovnání se zárukami správnosti, provozní hmotností a skutečnými náklady: vestavěné motory proti serverům, MySQL proti PostgreSQL, SQL proti úložištím dokumentů, plus starší případová studie, která se neustále vrací. Naše služba Správa serverů a Optimalizace rychlosti webu je tu proto, abyste porovnání databází nepoznávali na vlastní kůži; my se postaráme o zprovoznění, dohled a překvapení ve tři ráno.

Promluvte si s inženýrem

Problém se serverem? Hacknutý web? Pomalé načítání?

Kritické problémy vyřešeny do 30 minut — nepřetržitě, 7 dní v týdnu.

Požádat o pohotovostní podporu support@kinetikatech.com