Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vaše flexibilní instance serveru Azure Database for PostgreSQL podporuje PostgreSQL verze 18, 17, 16, 15, 14, 13, 12, 11. Komunita Postgres vydává novou hlavní verzi, která obsahuje nové funkce přibližně jednou za rok. Každá hlavní verze navíc dostává pravidelné opravy chyb ve formě dílčích verzí. Upgrady verze zahrnují změny, které jsou zpětně kompatibilní s existujícími aplikacemi. Instance flexibilního serveru Azure Database for PostgreSQL pravidelně aktualizuje podverze během časového období údržby zákazníka.
Aktualizace hlavní verze jsou složitější než aktualizace menší verze. Můžou zahrnovat interní změny a nové funkce, které nemusí být zpětně kompatibilní s existujícími aplikacemi.
Instance flexibilního serveru Azure Database for PostgreSQL má funkci, která provádí místní upgrade hlavní verze serveru jediným kliknutím. Tato funkce zjednodušuje proces upgradu minimalizací přerušení uživatelů a aplikací, které přistupují k serveru.
Místní upgrady si po upgradu hlavní verze zachovají název serveru a další nastavení aktuálního serveru. Nevyžadují migraci dat ani změny připojovacích řetězců aplikace. Místní upgrady jsou rychlejší a způsobují kratší výpadky než migrace dat.
Poznámka:
Azure Database for PostgreSQL podporuje místní upgrady hlavních verzí pouze na aktuálně podporované verze PostgreSQL. V době upgradu můžete například upgradovat aktuální verzi vzhledem k cílové verzi, kterou Azure oficiálně podporuje. Nepodporované verze nejde vybrat jako cíle upgradu a pokus o upgrade na zastaralou verzi může způsobit selhání nebo přerušení služeb. Před zahájením upgradu hlavní verze vždy projděte zásady správy verzí Azure PostgreSQL a dokumentaci k upgradu .
Poznámka:
Aktualizace hlavní verze na PostgreSQL 18 jsou povolovány ve fázích. V tuto chvíli je MVU to PostgreSQL 18 k dispozici v oblastech NorthCentralUS a WestCentralUS.
Proces upgradu
Tady je několik důležitých aspektů při zvažování, jak provést přímo na místě upgrady hlavních verzí.
- Před zahájením upgradu se ujistěte, že váš server má alespoň 10–20% dostupné bezplatné úložiště. Během procesu upgradu můžou dočasné soubory protokolů a operace metadat zvýšit využití disku. Nedostatek volného místa může vést k selháním upgradu nebo problémům se vrácením zpět.
- Během procesu místního upgradu hlavní verze spustí instance flexibilního serveru Azure Database for PostgreSQL předběžnou kontrolu, která identifikuje případné problémy, které by mohly způsobit selhání upgradu.
- Pokud předběžná kontrola najde případné nekompatibility, vytvoří událost protokolu, která ukazuje, že předběžná kontrola upgradu selhala, spolu s chybovou zprávou.
- Pokud je předběžná kontrola úspěšná, instance flexibilního serveru Azure Database for PostgreSQL zastaví službu a před zahájením upgradu provede implicitní zálohování. Pokud dojde k chybě upgradu, může služba tuto zálohu použít k obnovení instance databáze do předchozí verze.
- Instance flexibilního serveru Azure Database for PostgreSQL používá nástroj pg_upgrade k provádění místních upgradů hlavních verzí. Služba poskytuje flexibilitu pro přeskočení verzí a upgrade přímo na novější verze.
- Během místního upgradu hlavní verze serveru, který je povolený pro vysokou dostupnost (HA), služba zakáže vysokou dostupnost, provede upgrade na primárním serveru a po dokončení upgradu znovu povolí vysokou dostupnost.
- Většina rozšíření se během místního upgradu hlavní verze automaticky upgraduje na novější verze s některými výjimkami.
- Proces upgradu hlavní verze na místě pro instanci flexibilního serveru Azure Database for PostgreSQL automaticky nasadí nejnovější podporovanou menší verzi.
- Místní upgrade hlavní verze je offline operace, což znamená, že během procesu nebude server dostupný. I když většina upgradů trvá méně než 15 minut, skutečná doba trvání závisí na velikosti a složitosti databáze. Konkrétně je potřebný čas přímo úměrný počtu objektů (tabulek, indexů, schémat) ve vaší instanci PostgreSQL. U větších nebo složitějších schémat může docházet k delším časům upgradu.
- Dlouhotrvající transakce nebo vysoké zatížení před upgradem můžou zvýšit dobu potřebnou k vypnutí databáze a zvýšení doby upgradu.
- Po úspěšném upgradu místní hlavní verze neexistuje žádný automatizovaný způsob, jak se vrátit k předchozí verzi. Obnovení k určitému bodu v čase (PITR) však můžete provést k určitému okamžiku před upgradem a obnovit předchozí verzi instance databáze.
- Instance flexibilního serveru Azure Database for PostgreSQL pořídí snímek vaší databáze během upgradu. Snímek se pořídí před spuštěním upgradu. Pokud upgrade selže, systém automaticky obnoví vaši databázi do jejího stavu ze snímku.
- PostgreSQL 16 zavádí bezpečnostní opatření založená na rolích . Po upgradu velké verze na instanci flexibilního serveru Azure Database for PostgreSQL bude mít první uživatel vytvořený na serveru s možností SPRÁVCE administrativní oprávnění k ostatním rolím pro důležité údržbové operace.
Úvahy a omezení při upgradu
Pokud operace předběžné kontroly selže během místního upgradu hlavní verze, upgrade se zablokuje s podrobnou chybovou zprávou. Níže jsou uvedená známá omezení, která můžou způsobit selhání upgradu nebo neočekávané chování:
Nepodporované konfigurace serveru
- Repliky pro čtení nejsou podporovány během místních upgradů. Před upgradem primárního serveru musíte odstranit repliku pro čtení (včetně všech kaskádových replik pro čtení). Po upgradu můžete repliku vytvořit znovu.
- Pravidla síťového provozu můžou blokovat operace upgradu.
- Ujistěte se, že vaše flexibilní instance serveru může odesílat a přijímat provoz na portech 5432 a 6432 v rámci své virtuální sítě a do Služby Azure Storage (pro archivaci protokolů).
- Pokud skupiny zabezpečení sítě (NSG) omezují tento provoz, vysoká dostupnost se po aktualizaci automaticky znovu nepovolí. Možná budete muset ručně aktualizovat pravidla NSG a znovu povolit HA.
- Sloty logické replikace nejsou podporovány během místních upgradů hlavních verzí.
- Servery používající úložiště SSDv2 nemají nárok na upgrady hlavní verze.
- Zobrazení závislá na
pg_stat_activitynejsou podporována během upgradů hlavních verzí. - Pokud provádíte upgrade z PG11 na vyšší verzi, musíte nejprve nakonfigurovat flexibilní server tak, aby používal ověřování SCRAM povolením SCRAM a resetováním všech hesel přihlašovacích rolí.
Omezení rozšíření
Místní upgrady hlavní verze nepodporují všechna rozšíření PostgreSQL. Upgrade se během předběžné kontroly nezdaří, pokud se najdou nepodporovaná rozšíření.
- Pro běžné použití se podporují následující rozšíření, ale pokud jsou k dispozici, zablokují místní upgrade hlavní verze. Odeberte je před upgradem a znovu je povolte, pokud je podporováno v cílové verzi:
timescaledb,dblink,orafce,postgres_fdw. - Následující rozšíření jsou netrvalá rozšíření nástroje a bude nutné je po upgradu vyřadit a znovu vytvořit:
pg_repack,hypopg. - Při upgradu na PostgreSQL 17 se následující rozšíření nepodporují a před upgradem je nutné je odebrat. Můžete je znovu povolit pouze v případě, že je podporována v cílové verzi:
age,azure_aihll,pg_diskann.pgrouting
Poznámka: Pokud se některá z těchto rozšíření zobrazí v parametru azure.extensions serveru, upgrade se zablokuje. Před zahájením upgradu odeberte tyto položky z parametru.
Důležité informace o PostGIS-Specific
Pokud používáte PostGIS nebo jakákoli závislá rozšíření, musíte nakonfigurovat parametr serveru search_path tak, aby zahrnoval:
- Schémata související s PostGIS
- Závislá rozšíření, včetně:
postgis,postgis_raster,postgis_sfcgal,postgis_tiger_geocoder,postgis_topology,address_standardizer,address_standardizer_data_us,fuzzystrmatch - Selhání konfigurace search_path může vést k selháním upgradu nebo poškozeným objektům po upgradu.
Další aspekty upgradu
- Triggery událostí: Upgrade před kontrolou blokuje triggery událostí, protože se připojují k příkazům DDL a můžou odkazovat na systémové katalogy, které se mění mezi hlavními verzemi– před upgradem zahoďte všechny
EVENT TRIGGERudálosti a po upgradu je znovu vytvořte, abyste zajistili hladký upgrade. - Velké objekty (LOs): Databáze s miliony velkých objektů (uložené v
pg_largeobject) můžou způsobit selhání upgradu kvůli vysokému využití paměti nebo objemu protokolu. Pomocí nástroje vacuumlo vyčistěte nepoužívané LO a zvažte vertikální navýšení kapacity serveru před upgradem, pokud se stále používá mnoho LO.
Výstraha
Buďte opatrní s vysavačem vacuumlo.
vacuumlo identifikuje osamocené velké objekty na základě konvenčních referenčních sloupců (oid, lo). Pokud vaše aplikace používá vlastní nebo nepřímé odkazové typy, mohou být platné velké objekty omylem odstraněny. Kromě toho vacuumlo může spotřebovávat značné množství procesorového výkonu, paměti a IOPS, zejména v případě databází s miliony velkých objektů. Spusťte ho během údržbového okna a nejprve otestujte v neprodukčním prostředí.
Po aktualizaci
Po dokončení upgradu hlavní verze doporučujeme spustit ANALYZE příkaz v každé databázi a aktualizovat pg_statistic tabulku. Chybějící nebo zastaralé statistiky můžou vést ke špatným plánům dotazů, což může zase snížit výkon a zabírat nadměrnou paměť.
postgres=> analyze;
ANALYZE
Zobrazit protokoly upgradu
Protokoly upgradu hlavní verze (PG_Upgrade_Logs) poskytují přímý přístup k podrobným protokolům serveru.
PG_Upgrade_Logs Integrace do procesu upgradu může pomoct zajistit plynulejší a transparentnější přechod na nové verze PostgreSQL.
Protokoly upgradu hlavní verze můžete nakonfigurovat stejným způsobem jako protokoly serveru pomocí následujících parametrů serveru:
- Pokud chcete tuto funkci zapnout, nastavte
logfiles.download_enablenaON. - Chcete-li definovat uchovávání souborů protokolu ve dnech, použijte
logfiles.retention_days.
Nastavení protokolů upgradu
Pokud chcete začít používat PG_Upgrade_Logs, můžete nakonfigurovat zachytávání protokolů serveru PostgreSQL a protokolů upgradu hlavní verze.
K protokolům upgradu můžete přistupovat prostřednictvím uživatelského rozhraní pro protokoly serveru. Tam můžete sledovat průběh a podrobnosti upgradů hlavní verze PostgreSQL v reálném čase. Toto uživatelské rozhraní poskytuje centralizované umístění pro zobrazení protokolů, abyste mohli snadněji sledovat proces upgradu a řešit potíže.
Výhody používání protokolů upgradu
-
Přehledná diagnostika:
PG_Upgrade_Logsposkytuje cenné přehledy o procesu upgradu. Zaznamenává podrobné informace o provedených operacích a zvýrazňuje případné chyby nebo upozornění, ke kterým dochází. Tato úroveň podrobností je instrumentální při diagnostice a řešení problémů, které by mohly vzniknout během upgradu, pro plynulejší přechod. - Zjednodušené řešení potíží: S přímým přístupem k těmto protokolům můžete rychle identifikovat a řešit potenciální překážky upgradu, snížit výpadky a minimalizovat dopad na vaše operace. Protokoly slouží jako zásadní nástroj pro řešení potíží tím, že umožňují efektivnější a účinnější řešení problémů.
Poznámka:
Místní upgrady hlavních verzí se podporují na automaticky částečně generovaných serverech. Po úspěšném upgradu hlavní verze na automaticky migrovaném serveru se už nebude podporovat formát uživatelského jména username@servername. Místo toho musíte použít standardní formát: uživatelské jméno. Abyste se vyhnuli problémům s ověřováním, pečlivě zkontrolujte a aktualizujte všechny připojovací řetězce ve vašich aplikacích a skriptech, abyste měli jistotu, že po upgradu používají aktualizovaný formát uživatelského jména.