Uaktualnienia wersji głównych w usłudze Azure Database for PostgreSQL — serwer elastyczny
DOTYCZY: Azure Database for PostgreSQL — serwer elastyczny
Serwer elastyczny usługi Azure Database for PostgreSQL obsługuje bazy danych PostgreSQL w wersji 16, 15, 14, 13, 12 i 11. Społeczność Postgres publikuje nową wersję główną, która zawiera nowe funkcje około raz w roku. Ponadto każda wersja główna otrzymuje okresowe poprawki błędów w postaci wersji pomocniczych. Uaktualnienia wersji pomocniczej obejmują zmiany, które są zgodne z poprzednimi wersjami z istniejącymi aplikacjami. Serwer elastyczny usługi Azure Database for PostgreSQL okresowo aktualizuje wersje pomocnicze podczas okna obsługi klienta.
Uaktualnienia wersji głównych są bardziej skomplikowane niż uaktualnienia wersji pomocniczej. Mogą one obejmować zmiany wewnętrzne i nowe funkcje, które mogą nie być zgodne z poprzednimi wersjami istniejących aplikacji.
Serwer elastyczny usługi Azure Database for PostgreSQL ma funkcję, która wykonuje uaktualnienie wersji głównej serwera za pomocą kliknięcia. Ta funkcja upraszcza proces uaktualniania, minimalizując zakłócenia dla użytkowników i aplikacji, które uzyskują dostęp do serwera.
Uaktualnienia w miejscu zachowują nazwę serwera i inne ustawienia bieżącego serwera po uaktualnieniu wersji głównej. Nie wymagają migracji danych ani zmian w parametry połączenia aplikacji. Uaktualnienia w miejscu są szybsze i wymagają krótszego przestoju niż migracja danych.
Przetwarzaj
Poniżej przedstawiono niektóre ważne zagadnienia dotyczące uaktualnień wersji głównych w miejscu:
Podczas procesu uaktualniania wersji głównej w miejscu serwer elastyczny usługi Azure Database for PostgreSQL uruchamia procedurę wstępnego sprawdzania w celu zidentyfikowania potencjalnych problemów, które mogą spowodować niepowodzenie uaktualnienia.
Jeśli wstępne sprawdzanie wykryje jakiekolwiek niezgodności, tworzy zdarzenie dziennika, które pokazuje, że sprawdzanie wstępne uaktualnienia nie powiodło się wraz z komunikatem o błędzie.
Jeśli wstępne sprawdzenie zakończy się pomyślnie, elastyczny serwer usługi Azure Database for PostgreSQL zatrzymuje usługę i wykonuje niejawną kopię zapasową tuż przed rozpoczęciem uaktualniania. Usługa może użyć tej kopii zapasowej, aby przywrócić wystąpienie bazy danych do poprzedniej wersji, jeśli wystąpi błąd uaktualnienia.
Serwer elastyczny usługi Azure Database for PostgreSQL używa narzędzia pg_upgrade do przeprowadzania uaktualnień wersji głównych. Usługa zapewnia elastyczność pomijania wersji i uaktualniania bezpośrednio do nowszych wersji.
Podczas lokalnego uaktualnienia wersji głównej serwera z włączoną wysoką dostępnością usługa wyłącza wysoką dostępność, przeprowadza uaktualnienie na serwerze podstawowym, a następnie ponownie włącza wysoką dostępność po zakończeniu uaktualniania.
Większość rozszerzeń jest automatycznie uaktualniana do nowszych wersji podczas uaktualniania wersji głównej w miejscu z pewnymi wyjątkami.
Proces uaktualniania wersji głównej w miejscu dla serwera elastycznego usługi Azure Database for PostgreSQL automatycznie wdraża najnowszą obsługiwaną wersję pomocniczą.
Uaktualnienie wersji głównej w miejscu to operacja offline, która powoduje krótki czas przestoju. Przestój jest zwykle krótszy niż 15 minut. Czas trwania może się różnić w zależności od liczby zaangażowanych tabel systemowych.
Długotrwałe transakcje lub duże obciążenie przed uaktualnieniem może wydłużyć czas potrzebny na zamknięcie bazy danych i zwiększenie czasu uaktualniania.
Po pomyślnym uaktualnieniu wersji głównej w miejscu nie ma zautomatyzowanych sposobów przywracania do wcześniejszej wersji. Można jednak wykonać odzyskiwanie do punktu w czasie (PITR) do czasu przed uaktualnieniem, aby przywrócić poprzednią wersję wystąpienia bazy danych.
Usługa Azure Database for PostgreSQL — elastyczny serwer tworzy migawkę bazy danych podczas uaktualniania. Migawka jest wykonywana przed rozpoczęciem uaktualniania. Jeśli uaktualnienie zakończy się niepowodzeniem, system automatycznie przywróci bazę danych do stanu z migawki.
Program PostgreSQL 16 wprowadza środki zabezpieczeń oparte na rolach. Po uaktualnieniu wersji głównej na serwerze elastycznym usługi Azure Database for PostgreSQL pierwszy użytkownik utworzony na serwerze — któremu udzielono opcji ADMIN — będzie teraz miał uprawnienia administracyjne do innych ról na potrzeby podstawowych operacji konserwacji.
Po uaktualnieniu/migracji
Po zakończeniu uaktualniania wersji głównej zalecamy uruchomienie ANALYZE
polecenia w każdej bazie danych w celu odświeżenia pg_statistic
tabeli. W przeciwnym razie mogą wystąpić problemy z wydajnością.
postgres=> analyze;
ANALYZE
Dzienniki uaktualniania wersji głównej
Dzienniki uaktualniania wersji głównej (PG_Upgrade_Logs
) zapewniają bezpośredni dostęp do szczegółowych dzienników serwera. Integracja PG_Upgrade_Logs
z procesem uaktualniania może pomóc zapewnić bezproblemowe i bardziej przejrzyste przejście do nowych wersji bazy danych PostgreSQL.
Dzienniki uaktualniania wersji głównej można skonfigurować w taki sam sposób jak dzienniki serwera, używając następujących parametrów serwera:
- Aby włączyć funkcję, ustaw wartość
logfiles.download_enable
ON
. - Aby zdefiniować przechowywanie plików dziennika w dniach, użyj polecenia
logfiles.retention_days
.
Konfigurowanie dzienników uaktualniania
Aby rozpocząć korzystanie z usługi PG_Upgrade_Logs
, możesz skonfigurować dzienniki za pomocą witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure. Wybierz metodę najlepiej pasującą do przepływu pracy.
Dostęp do dzienników uaktualniania można uzyskać za pośrednictwem interfejsu użytkownika dla dzienników serwera. W tym miejscu możesz monitorować postęp i szczegóły uaktualnień wersji głównej bazy danych PostgreSQL w czasie rzeczywistym. Ten interfejs użytkownika zapewnia scentralizowaną lokalizację do przeglądania dzienników, dzięki czemu można łatwiej śledzić i rozwiązywać problemy z procesem uaktualniania.
Korzyści wynikające z używania dzienników uaktualniania
- Szczegółowe dane diagnostyczne:
PG_Upgrade_Logs
zapewnia cenny wgląd w proces uaktualniania. Przechwytuje szczegółowe informacje o wykonanych operacjach i wyróżnia wszelkie błędy lub ostrzeżenia, które występują. Ten poziom szczegółowości odgrywa kluczową rolę w diagnozowaniu i rozwiązywaniu problemów, które mogą wystąpić podczas uaktualniania, w celu zapewnienia bezproblemowego przejścia. - Usprawnione rozwiązywanie problemów: dzięki bezpośredniemu dostępowi do tych dzienników można szybko zidentyfikować i rozwiązać potencjalne przeszkody uaktualniania, zmniejszyć przestoje i zminimalizować wpływ na operacje. Dzienniki służą jako kluczowe narzędzie do rozwiązywania problemów, umożliwiając wydajniejsze i skuteczne rozwiązanie problemu.
Ograniczenia
Jeśli operacje sprawdzania wstępnego nie powiedzą się w przypadku uaktualnienia wersji głównej w miejscu, uaktualnienie kończy się niepowodzeniem z szczegółowym komunikatem o błędzie dla wszystkich następujących ograniczeń:
Uaktualnienia wersji głównej w miejscu obecnie nie obsługują replik do odczytu. Jeśli masz serwer, który działa jako replika do odczytu, musisz usunąć replikę przed wykonaniem uaktualnienia na serwerze podstawowym. Po uaktualnieniu można ponownie utworzyć replikę.
Azure Database for PostgreSQL — serwer elastyczny wymaga możliwości wysyłania i odbierania ruchu do portów docelowych 5432 i 6432 w sieci wirtualnej, w której wdrożono serwer elastyczny, oraz do usługi Azure Storage na potrzeby archiwizowania dzienników.
Jeśli skonfigurujesz sieciowe grupy zabezpieczeń w celu ograniczenia ruchu do lub z serwera elastycznego w ramach wdrożonej podsieci, pamiętaj, aby zezwolić na ruch do portów docelowych 5432 i 6432 w podsieci. Zezwalaj na ruch do usługi Azure Storage przy użyciu tagu usługi Azure Storage jako miejsca docelowego.
Jeśli reguły sieci nie są prawidłowo skonfigurowane, wysoka dostępność nie jest włączana automatycznie po uaktualnieniu wersji głównej i należy ręcznie włączyć wysoką dostępność. Zmodyfikuj reguły sieciowej grupy zabezpieczeń, aby zezwolić na ruch dla portów docelowych i magazynu oraz włączyć funkcję wysokiej dostępności na serwerze.
Uaktualnienia wersji głównej w miejscu nie obsługują niektórych rozszerzeń i istnieją pewne ograniczenia dotyczące uaktualniania niektórych rozszerzeń. Następujące rozszerzenia nie są obsługiwane dla wszystkich wersji bazy danych PostgreSQL:
Timescaledb
, ,pgaudit
dblink
,orafce
, ,pg_partman
.postgres_fdw
Podczas uaktualniania serwerów z zainstalowanym rozszerzeniem PostGIS ustaw parametr
search_path
serwera, aby jawnie uwzględnić:- Schematy rozszerzenia PostGIS.
- Rozszerzenia, które są zależne od systemu PostGIS.
- Rozszerzenia, które służą jako zależności dla następujących rozszerzeń:
postgis
, ,postgis_tiger_geocoder
postgis_topology
postgis_raster
postgis_sfcgal
address_standardizer
,address_standardizer_data_us
(fuzzystrmatch
wymagane dla programu ).postgis_tiger_geocoder
Serwery skonfigurowane przy użyciu miejsc replikacji logicznej nie są obsługiwane.
Serwery korzystające z magazynu SSDv2 nie obsługują uaktualnień wersji głównych.
Następne kroki
- Dowiedz się, jak przeprowadzić uaktualnienie wersji głównej.
- Dowiedz się więcej o wysokiej dostępności strefowo nadmiarowej.
- Dowiedz się więcej o tworzeniu kopii zapasowych i odzyskiwaniu.