Upgrade hlavní verze na flexibilním serveru Azure Database for MySQL

PLATÍ PRO: Flexibilní server Azure Database for MySQL

Poznámka:

Tento článek obsahuje odkazy na termín slave (podřízený) , což je termín, který už Microsoft nepoužívá. Když se termín odebere ze softwaru, odebereme ho z tohoto článku.

Tento článek popisuje, jak můžete upgradovat hlavní verzi MySQL na flexibilním serveru Azure Database for MySQL. Tato funkce umožňuje zákazníkům provádět místní upgrady serverů MySQL 5.7 na MySQL 8.0 bez přesunu dat nebo nutnosti provádět jakékoli změny aplikace připojovací řetězec.

Důležité

  • Upgrade hlavní verze je momentálně pro servery verze 5.7 nedostupný na základě skladové položky Burstable.
  • Doba trvání výpadku se liší podle velikosti instance databáze a počtu tabulek, které obsahuje.
  • Při zahájení upgradu hlavní verze flexibilního serveru Azure Database for MySQL prostřednictvím rozhraní REST API nebo sady SDK se vyhněte úpravám dalších vlastností služby ve stejném požadavku. Současné změny nejsou povoleny a můžou vést k nezamýšleným výsledkům nebo selhání žádosti. Proveďte změny vlastností v samostatných operacích po dokončení upgradu.
  • Upgrade hlavní verze MySQL je nevratný. Nasazení může selhat, pokud se při ověřování zjistí, že jsou na serveru nakonfigurované nějaké odebrané nebo zastaralé funkce. Na serveru můžete provést potřebné změny konfigurace a zkusit upgrade zopakovat.

Požadavky

  • Repliky pro čtení s MySQL verze 5.7 by měly být upgradovány před replikací primárního serveru, aby byla kompatibilní mezi různými verzemi MySQL, přečtěte si další informace o kompatibilitě replikace mezi verzemi MySQL.
  • Před upgradem produkčních serverů je teď jednodušší a efektivnější díky naší integrované funkci Ověřit na webu Azure Portal. Tento nástroj předem zkontroluje kompatibilitu schématu databáze s MySQL 8.0 a zvýrazní potenciální problémy. I když tuto pohodlnou možnost nabízíme, důrazně doporučujeme použít oficiální nástroj Pro kontrolu upgradu Oracle MySQL k otestování kompatibility schématu databáze a provedení nezbytného regresního testu k ověření kompatibility aplikací s funkcemi odebranými/ v nové verzi MySQL.
  • Před provedením upgradu hlavní verze na produkčním serveru aktivujte zálohování na vyžádání, které lze použít k vrácení zpět na verzi 5.7 z úplného pořízeného zálohování na vyžádání.

Provedení plánovaného upgradu hlavní verze z MySQL 5.7 na MySQL 8.0 pomocí webu Azure Portal

Pokud chcete provést upgrade hlavní verze flexibilního serveru Azure Database for MySQL 5.7 pomocí webu Azure Portal, proveďte následující kroky.

  1. Na webu Azure Portal vyberte stávající flexibilní server Azure Database for MySQL 5.7.

    Důležité

    Doporučujeme nejprve provést upgrade na obnovené kopii serveru místo přímého upgradu produkčního prostředí. Podívejte se, jak provést obnovení k určitému bodu v čase.

  2. Na stránce Přehled na panelu nástrojů vyberte Upgradovat.

    Důležité

    Před upgradem přejděte na odkaz pro seznam funkcí odebraných v MySQL 8.0. Pomocí okna Parametry serveru na webu Azure Portal ověřte sql_mode zastaralé hodnoty a pomocí okna Parametry serveru na webu Azure Portal je odeberte nebo zrušte jejich výběr z aktuálního flexibilního serveru Azure Database for MySQL. sql_mode s hodnotami NO_AUTO_CREATE_USER, NO_FIELD_OPTIONS, NO_KEY_OPTIONS a NO_TABLE_OPTIONS se už v MySQL 8.0 nepodporují.

    Screenshot showing Azure Database for MySQL flexible server Upgrade.

  3. Provedení ověření před upgradem

    Než budete pokračovat v upgradu, klikněte na tlačítko Ověřit a zkontrolujte kompatibilitu serveru s MySQL 8.0.

    Screenshot showing validate.

    Důležité

    Když použijete funkci Ověřit ke kontrole kompatibility schématu databáze s MySQL 8.0, mějte na paměti, že zahrnuje uzamčení tabulek k přesnému vyhodnocení celého schématu. Tento proces může vést k vypršení časových limitů dotazů. Proto se doporučuje neprovádět ověřování během špičky v pracovní době nebo v případě, že u databáze dochází k vysokému provozu. Výběr období nízké aktivity pro ověření může pomoct minimalizovat dopad na vaše operace.

  4. Na bočním panelu Upgrade ověřte ve verzi MySQL textové pole pro upgrade hlavní verzi MySQL, na kterou chcete upgradovat, tj. 8.0.

    Screenshot showing Upgrade.

    Před upgradem primárního serveru musíte nejprve upgradovat všechny přidružené servery repliky pro čtení. Dokud se tento postup nedokončí, upgrade se zakáže.

  5. Na primárním serveru vyberte potvrzovací zprávu, abyste ověřili, že byly upgradovány všechny servery repliky, a pak vyberte Upgradovat.

    Screenshot showing upgrade.

    Na replikách pro čtení a samostatných serverech je upgrade ve výchozím nastavení povolený.

Provedení plánovaného upgradu hlavní verze z MySQL 5.7 na MySQL 8.0 pomocí Azure CLI

Pokud chcete provést upgrade hlavní verze flexibilního serveru Azure Database for MySQL 5.7 pomocí Azure CLI, proveďte následující kroky.

  1. Nainstalujte Azure CLI pro Windows nebo pomocí Azure CLI v Azure Cloud Shellu spusťte příkazy upgradu.

    Tento upgrade vyžaduje verzi 2.40.0 nebo novější azure CLI. Pokud používáte Azure Cloud Shell, je už nainstalovaná nejnovější verze. Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.

  2. Po přihlášení spusťte příkaz az mysql server upgrade .

    az mysql flexible-server upgrade --name {your mysql server name} --resource-group {your resource group} --subscription {your subscription id} --version 8
    
  3. V potvrzovací výzvě zadejte y , abyste potvrdili nebo n zastavili proces upgradu, a stiskněte Enter.

Provedení upgradu hlavní verze z MySQL 5.7 na MySQL 8.0 na serveru repliky pro čtení pomocí webu Azure Portal

Pokud chcete provést upgrade hlavní verze flexibilního serveru Azure Database for MySQL 5.7 na MySQL 8.0 na repliku pro čtení pomocí webu Azure Portal, proveďte následující kroky.

  1. Na webu Azure Portal vyberte existující flexibilní server Azure Database for MySQL 5.7 pro čtení serveru repliky.

  2. Na stránce Přehled na panelu nástrojů vyberte Upgradovat.

Důležité

Před upgradem přejděte na odkaz pro seznam funkcí odebraných v MySQL 8.0. Pomocí okna Parametry serveru na webu Azure Portal ověřte sql_mode zastaralé hodnoty a pomocí okna Parametry serveru na webu Azure Portal je odeberte nebo zrušte jejich výběr z aktuálního flexibilního serveru Azure Database for MySQL.

  1. V části Upgrade vyberte Upgrade a upgradujte flexibilní server Azure Database for MySQL 5.7 na server repliky pro čtení MySQL 8.0.

    Zobrazí se oznámení s potvrzením, že upgrade proběhl úspěšně.

  2. Na stránce Přehled ověřte, že server repliky pro čtení flexibilního serveru Azure Database for MySQL používá verzi 8.0.

  3. Teď přejděte na primární server a proveďte upgrade hlavní verze.

Provedení minimálního výpadku upgradu hlavní verze z MySQL 5.7 na MySQL 8.0 pomocí replik pro čtení

Pokud chcete provést upgrade hlavní verze flexibilního serveru Azure Database for MySQL 5.7 na MySQL 8.0 s minimálními výpadky pomocí serverů replik pro čtení, proveďte následující kroky.

  1. Na webu Azure Portal vyberte stávající flexibilní server Azure Database for MySQL 5.7.

  2. Vytvořte repliku pro čtení z primárního serveru.

  3. Upgradujte repliku pro čtení na verzi 8.0.

  4. Po potvrzení, že server repliky používá verzi 8.0, zastavte aplikaci v připojení k primárnímu serveru.

  5. Zkontrolujte stav replikace a ujistěte se, že replika zachytila primární server, aby se všechna data synchronizovala a aby se na primárním serveru neprováděly žádné nové operace.

  6. Potvrďte zobrazení stavu repliky pomocí příkazu zobrazit stav repliky na serveru repliky.

     SHOW SLAVE STATUS\G
    

    Pokud je stav Slave_IO_Running a Slave_SQL_Running ano a hodnota Seconds_Behind_Master je 0, replikace funguje dobře. Seconds_Behind_Master označuje, jak pozdě je replika. Pokud hodnota není 0, replika stále zpracovává aktualizace. Jakmile potvrdíte, že hodnota Seconds_Behind_Master je ****, je bezpečné zastavit replikaci.

  7. Zvyšte úroveň repliky pro čtení na primární tím, že zastavíte replikaci.

  8. Nastavte parametr serveru read_only na hodnotu 0 (VYPNUTO) a začněte psát na upřednostněné primární.

  9. Nasměrujte aplikaci na novou primární (bývalou repliku), na které běží server 8.0. Každý server má jedinečný připojovací řetězec. Místo zdroje aktualizujte aplikaci tak, aby odkazovat na (bývalou) repliku.

Poznámka:

Tento scénář způsobuje výpadek pouze během kroků 4 až 7.

Nejčastější dotazy

  • Způsobí to výpadek serveru a pokud ano, jak dlouho?

    Pokud chcete mít během upgradů minimální prostoje, postupujte podle kroků uvedených v části Provedení minimálního výpadku upgradu hlavní verze z MySQL 5.7 na MySQL 8.0 pomocí replik pro čtení. Server nebude během procesu upgradu dostupný, proto doporučujeme tuto operaci provést během časového období plánované údržby. Odhadovaný výpadek závisí na velikosti databáze, zřízené velikosti úložiště (zřízené vstupně-výstupní operace za sekundu) a počtu tabulek v databázi. Doba upgradu je přímo úměrná počtu tabulek na serveru. Pokud chcete odhadnout výpadek pro vaše serverové prostředí, doporučujeme nejprve provést upgrade na obnovenou kopii serveru.

  • Co se stane s mými zálohami po upgradu?

    Všechny zálohy (automatizované nebo na vyžádání) pořízené před upgradem hlavní verze, při použití k obnovení se vždy obnoví na server se starší verzí (5.7). Všechny zálohy (automatizované nebo na vyžádání) pořízené po upgradu hlavní verze se obnoví na server s upgradovanou verzí (8.0). Před provedením upgradu hlavní verze pro snadné vrácení zpět se důrazně doporučuje provést zálohování na vyžádání.

  • V současné době používám skladovou položku Burstable, plánuje Microsoft v budoucnu podporovat upgrade hlavní verze pro tuto skladovou položku?

    Skladová položka s možností rozšíření nemůže podporovat upgrade hlavní verze kvůli omezení výkonu této skladové položky.

    Pokud potřebujete ve své instanci flexibilního serveru Azure Database for MySQL provést upgrade hlavní verze a aktuálně používáte skladovou položku Burstable, jedním dočasným řešením by bylo upgradovat na skladovou položku Pro obecné účely nebo Pro důležité obchodní informace skladovou položku, provést upgrade a pak přepnout zpět na skladovou položku Burstable.

    Upozorňujeme, že upgrade na vyšší skladovou položku může zahrnovat změnu cen a může vést ke zvýšení nákladů na vaše nasazení. Vzhledem k tomu, že proces upgradu neočekává dlouhou dobu, neměly by být přidané náklady významné.

Další kroky