Seznámení se službou Azure Database for MySQL

Dokončeno

Azure Database for MySQL je možné nasadit jako flexibilní server (Preview) pro hostování databáze MySQL ve vaší organizaci v Azure. Jedná se o plně spravovanou databázi jako službu, která dokáže zpracovávat důležité úlohy s předvídatelným výkonem a dynamickou škálovatelností.

Jako vývojář databáze s mnoha lety zkušeností se spouštěním a správou místních instalací MySQL chcete zjistit, jak Azure Database for MySQL podporuje a škáluje její funkce.

V této lekci prozkoumáte ceny, podporu verzí, replikaci a možnosti škálování služby Azure Database for PostgreSQL.

Vysvětlení výhod Služby Azure Database for MySQL

Azure Database for MySQL je zřízený jako server Azure Database for MySQL. Server Azure Database for MySQL je ekvivalentní místnímu serveru MySQL a poskytuje centrální bod pro správu více databází MySQL.

Pokud chcete vytvořit databázi Azure Database for MySQL, musíte nejprve zřídit server Azure Database for MySQL. Server Azure Database for MySQL je nadřazený jedním nebo mnoha databázím a poskytuje obor názvů pro databáze. Pokud server odstraníte, odstraníte všechny databáze, které obsahuje.

Co poskytuje server Azure Database for MySQL?

Služba Azure Database for MySQL zahrnuje vysokou dostupnost bez dalších nákladů a škálovatelnost podle potřeby. Platíte jenom za to, co používáte. K dispozici jsou automatické zálohy s obnovením k bodu v čase.

Server poskytuje zabezpečení připojení, aby vynutil pravidla brány firewall, a volitelně vyžaduje připojení SSL. Mnoho parametrů serveru umožňuje konfigurovat nastavení serveru, jako jsou režimy uzamčení, maximální počet připojení a vypršení časových limitů. Změny parametrů, které jsou označené jako dynamické , se projeví okamžitě. Statické parametry vyžadují restartování serveru. Server restartujete pomocí tlačítka Restartovat na stránce Přehled na portálu.

Servery Azure Database for MySQL zahrnují funkce monitorování pro přidání upozornění a zobrazení metrik a protokolů.

Cenové úrovně

Cenové úrovně umožňují širokou škálu výkonu a kapacity od jednoho do 64 virtuálních jader a od 5 GB do 4 TB úložiště. Cenová úroveň Basic je určená pro lehké výpočetní úlohy a podporuje až dvě virtuální jádra s 2 GB paměti na jádro. Cenová úroveň pro obecné účely bude vyhovovat většině obchodních úloh a podporuje 2 až 64 virtuálních jader s 5 GB paměti na jádro. Cenová úroveň optimalizovaná pro paměť podporuje dvě až 32 virtuálních jader, má 10 GB paměti na virtuální jádro a je určená pro úlohy s vysokým výkonem, včetně analýzy dat v reálném čase. I když můžete přepínat mezi cenovými úrovněmi pro obecné účely a optimalizovány pro paměť a změnit počet virtuálních jader nebo úložiště během několika sekund, nemůžete přejít na cenovou úroveň Basic ani z ní.

Image showing the pricing tiers in the Azure portal

Existují omezení připojení na základě cenových úrovní a počtu virtuálních jader. Další informace najdete v tématu Omezení ve službě Azure Database for MySQL .

Správa verzí a upgrady

Azure Database for MySQL podporuje verzi 5.6 (s vydáním opravy chyb 5.6.42), 5.7 (s vydáním opravy chyb 5.7.24) a 8.0 (s opravou chyb ve verzi 8.0.15).

Poznámka:

Brána přesměruje připojení k instancím serveru. Klienti MySQL místo verze instance serveru zobrazí verzi brány. Pokud chcete zobrazit verzi instance serveru, použijte příkaz SELECT VERSION(); Příkaz.

Verze oprav chyb se použijí automaticky, ale upgrady verzí se nepodporují. Pokud chcete upgradovat z jedné verze na jinou, měli byste provést výpis a obnovení.

Škálovatelnost

Jak už bylo zmíněno, nemůžete přejít na cenovou úroveň Basic ani z ní. Můžete ale změnit počet virtuálních jader, generaci hardwaru, svazek úložiště a dobu uchovávání záloh. Můžete také přepínat mezi cenovými úrovněmi pro obecné účely a optimalizovány pro paměť.

Všimněte si, že úložiště se zvyšuje, nezmenšuje a je možné ho nastavit na automatické zvětšování. Pokud je povolené automatické zvětšování, úložiště roste o 5 GB, pokud je dostupné úložiště menší než 1 GB nebo 10 % svazku úložiště (podle toho, co je větší) pro servery s méně než 100 GB úložiště. U serverů s více než 100 GB se úložiště zvýší o 5 %, pokud je dostupné úložiště menší než 5 %.

Vysoká dostupnost

Azure Database for MySQL zahrnuje finančně zajištěnou smlouvu o úrovni služeb (SLA) pro dostupnost 99,99 %. Pokud dojde k selhání hardwaru nebo nasazení služby, vytvoří se automaticky nový uzel a k tomuto uzlu se připojí úložiště. Převzetí služeb při selhání se dokončí během desítek sekund.

Pokud je instance serveru Azure Database for MySQL vertikálně navýšit nebo vertikálně snížit kapacitu, dojde k podobnému procesu s úložištěm dat připojeným k nové instanci. Pokud dojde k převzetí služeb při selhání, dojde k vertikálnímu navýšení nebo snížení kapacity nebo dojde k přerušení internetového provozu mezi klientem a Azure, může na klientovi dojít k přechodné chybě připojení. V aplikacích je důležité mít logiku opakování. V případě převzetí služeb při selhání bude brána směrovat provoz do nového uzlu bez nutnosti konfigurace v klientovi.

Informace o zpracovánípřechodných

Replikace dat ve službě Azure Database for MySQL

Replikace příchozích dat

Replikace vstupních dat používá nativní funkci replikace MySQL k replikaci dat z externího serveru MySQL do Služby Azure Database for MySQL. To je užitečné, pokud chcete zřídit hybridní prostředí s existující místní instancí MySQL a replikou založenou na Azure. Tento scénář poskytuje uživatelům v globálně distribuovaném systému místní data. K replikaci dat z virtuálního počítače nebo databázové služby MySQL hostované jiným poskytovatelem cloudu můžete použít také replikaci dat.

Důležité informace o replikaci příchozích dat

Tady je několik faktorů, které je potřeba zvážit při replikaci dat:

  • Hlavní servery a servery replik musí mít stejnou verzi a minimálně verzi 5.6.
  • Hlavní server a replika by měly používat modul InnoDB.
  • Každá tabulka musí mít primární klíč.
  • Server Azure Database for MySQL musí mít cenovou úroveň Pro obecné účely nebo Optimalizováno pro paměť.
  • Měli byste mít práva k vytváření uživatelů a konfiguraci binárního protokolování na hlavním serveru.
  • Systémová databáze mysql se nereplikuje. Účty a oprávnění se nereplikují z hlavního serveru do repliky a měly by se vytvořit ručně.

Postup konfigurace replikace příchozích dat

Existuje několik kroků ke konfiguraci replikace příchozích dat:

  • Vytvořte server Azure Database for MySQL, který se použije jako hostitel repliky, a vytvořte všechny potřebné uživatelské účty a oprávnění.
  • Nakonfigurujte replikaci na hlavním serveru.
  • Výpis a obnovení hlavního serveru
  • Ke konfiguraci cílového serveru použijte uložené procedury replikace příchozích dat.

Další informace najdete v tématu Konfigurace replikace dat Azure Database for MySQL.

Čtení replik

Repliky pro čtení používají nativní replikační technologii MySQL k vytváření asynchronních instancí replik serverů Azure Database for MySQL. Servery replik jsou jen pro čtení a pro každý hlavní server může existovat až pět replik. Pro každou repliku pro čtení se měsíční náklady účtují na základě virtuálních jader a úložiště, které používá.

Používá se pro repliky pro čtení.

Servery pro vytváření sestav

Vytvořením repliky hlavního serveru jen pro čtení nasměrujete všechny úlohy generování sestav, BI a analytické úlohy na repliku. Tím se z hlavního serveru odebere úloha a sníží konflikty, zatímco hlavní server spouští úlohy náročné na zápis.

Přenesení dat uživatelům do blízkosti

Vytvoříte repliky mezi oblastmi, aby se data blížily uživatelům a zlepšily jejich rychlost čtení. Repliky mezi oblastmi můžou být v oblasti univerzální repliky nebo spárované oblasti hlavního serveru. Dostupné oblasti jsou uvedeny při vytváření serveru repliky.

Image showing replica regions

Konfigurace replik pro čtení

Repliku pro čtení nakonfigurujete na webu Azure Portal:

Image showing replication setting in the Azure portal

Pak zadáte název a oblast repliky:

Image showing replication in the Azure portal

Poznámka:

Repliky pro čtení nejsou k dispozici v cenové úrovni Basic.

Další informace o replikách pro čtení najdete v tématu Čtení replik ve službě Azure Database for MySQL.

Správa a monitorování

Azure Database for MySQL nabízí širokou škálu monitorovacích nástrojů, které vám pomůžou optimalizovat server, dostávat oznámení o událostech a aktivně reagovat na metriky. Ke správě a monitorování serverů Azure Database for MySQL můžete použít také známé nástroje pro správu MySQL, jako jsou nedávné verze aplikace MySQL Workbench, PHPMy Správa a Navicat:

Image showing the MySQL Workbench tool connected to Azure Database for MySQL

Nástroje Azure pro monitorování služby Azure Database for MySQL

Mezi nástroje dostupné na webu Azure Portal pro správu a monitorování služby Azure Database for MySQL patří:

  • Metriky Azure Metriky poskytují číselná data každou minutu a ukládají se po dobu 30 dnů. Existuje široká škála metrik, které používáte k monitorování serveru – můžete také nakonfigurovat výstrahy pro reakci na metriky.

    Image showing Azure metrics

    Další informace najdete v datové platformě služby Azure Monitor.

  • Protokoly serveru a auditu. Protokoly serveru umožňují monitorovat pomalé dotazy a poskytovat protokolování auditu pro váš server. Protokoly serveru jsou dostupné mimo službu SQL Database for MySQL prostřednictvím diagnostických protokolů Azure.

    Image showing Azure server logs

    Další informace najdete v protokolech pomalých dotazů ve službě Azure Database for MySQL . Protokoly auditu jsou funkce preview, která poskytuje protokolování auditu pro sledování databázové aktivity. Pokud chcete zapnout protokolování auditu, nastavte parametr audit_log_enabled na ZAPNUTO. Další informace o protokolech auditu najdete v tématu Protokoly auditu ve službě Azure Database for MySQL.

  • Úložiště dotazů. Používá se ke sledování výkonu serveru v průběhu času a k poskytnutí informací o řešení potíží. Úložiště dotazů uchovává historii dotazů a statistiky za běhu, takže můžete identifikovat dotazy náročné na prostředky nebo dlouho běžící dotazy. Pokud chcete povolit úložiště dotazů, nastavte parametr serveru query_store_capture_mode na ALL: Image showing Query Store capture mode

    Pokud chcete zobrazit data úložiště dotazů o dotazech, spusťte následující dotaz:

    SELECT * FROM mysql.query_store;
    

    Pokud chcete zobrazit data o statistikách čekání, spusťte následující dotaz:

    SELECT * FROM mysql.query_store_wait_stats;
    

    Poznámka:

    Úložiště dotazů je funkce Preview a není dostupná v cenové úrovni Basic.

    Další informace o úložišti dotazů najdete v tématu Monitorování výkonu služby Azure Database for MySQL pomocí úložiště dotazů.

  • Query Performance Insight Query Performance Insight zobrazuje data z úložiště dotazů jako vizualizace, abyste mohli identifikovat dotazy, které mají vliv na výkon. Query Performance Insight je v části Inteligentní výkon vaší služby Azure Database for MySQL na webu Azure Portal.

    Poznámka:

    Query Performance Insight je funkce Preview a není dostupná v cenové úrovni Basic.

    Další informace o nástroji Query Performance Insight najdete v tématu Query Performance Insight ve službě Azure Database for MySQL.

  • Doporučení k výkonu. Doporučení k výkonu používají data z úložiště dotazů k analýze úloh a kombinuje je s charakteristikami databáze, aby navrhla nové indexy pro zlepšení výkonu. Doporučení k výkonu najdete v části Inteligentní výkon vaší služby Azure Database for MySQL na webu Azure Portal.

    Poznámka:

    Doporučení k výkonu jsou funkce preview a nejsou k dispozici na cenové úrovni Basic.

    Další informace o doporučeních k výkonu najdete v tématu Doporučení k výkonu ve službě Azure Database for MySQL.

Možnosti připojení klienta

Ovladače MySQL

Azure Database for MySQL používá komunitní edici MySQL a je kompatibilní s širokou škálou ovladačů – podporuje celou řadu programovacích jazyků. Připojení řetězce jsou k dispozici na webu Azure Portal:

Image showing connection strings

Další informace o ovladačích MySQL najdete v tématu Ovladače MySQL a nástroje pro správu kompatibilní se službou Azure Database for MySQL.

Konfigurace brány firewall

Nejjednodušší způsob, jak nakonfigurovat bránu firewall, je použít nastavení zabezpečení Připojení ion pro vaši službu na webu Azure Portal. Přidejte pravidlo pro každý rozsah IP adres klienta. Na této stránce můžete také vynutit připojení SSL k vaší službě.

Image showing the firewall configuration for Azure Database for PostgreSQL

Kliknutím na přidat IP adresu klienta na panelu nástrojů přidáte IP adresu vašeho stolního počítače.

Pokud jste nakonfigurovali repliky jen pro čtení, musíte do každé z nich přidat pravidlo brány firewall, aby byly přístupné klientům.

Přechodné chyby připojení

Když se připojíte k databázi přes internet, přechodné chyby připojení jsou nevyhnutelné a měly by je zpracovávat klientské aplikace.

Informace o přechodných chybách připojení najdete v tématu Zpracování přechodných chyb připojení pro Službu Azure Database for MySQL.

Funkce MySQL, které nejsou podporované ve službě Azure Database for MySQL

I když je většina funkcí MySQL dostupná ve službě Azure Database for MySQL, některé se nepodporují. Tyto funkce byste měli zkontrolovat, abyste se ujistili, že při migraci zmírníte případné problémy.

Moduly úložiště

Azure Database for MySQL podporuje moduly úložiště InnoDB a MEMORY. InnoDB je výchozí modul úložiště pro MySQL, který poskytuje rovnováhu mezi vysokým výkonem a vysokou spolehlivostí. Všechny nové tabulky v MySQL budou používat modul úložiště InnoDB, pokud není zadán jinak.

Další informace o modulu úložiště InnoDB najdete v tématu Úvod do InnoDB.

Pro ukládání dat do paměti je k dispozici modul úložiště MEMORY. Tato data jsou ohrožená z jakékoli formy chybového ukončení nebo výpadku – modul úložiště MEMORY by se měl používat jenom jako dočasné vysoce výkonné úložiště.

Další informace o modulu úložiště MEMORY naleznete v tématuPAMĚŤ Storage Engine.

Moduly úložiště MyISAM, BLACKHOLE, ARCHIVE a FEDERATED se ve službě Azure Database for MySQL nepodporují. Data MyISAM by se měla převést na modul úložiště InnoDB. Moduly ÚLOŽIŠTĚ BLACKHOLE, ARCHIVE a FEDERATED mají specializované role a nepoužívají se jako typická úložiště dat.

Oprávnění a role

Role DBA není vystavena, protože mnoho nastavení serveru a parametrů může narušit pravidla transakcí a snížit výkon. Z podobných důvodů je oprávnění SUPER omezené, stejně jako klauzule DEFINER , která používá oprávnění SUPER .

Obnovení

Ve službě Azure Database for MySQL fungují dvě funkce obnovení odlišně:

  • Obnovení k určitému bodu v čase vytvoří nový server s identickou konfigurací serveru, na který je založen.
  • Odstraněný server nejde obnovit.