In diesem Dokument wird beschrieben, wie Sie Probleme beheben, die beim direkten Upgrade Ihrer AlloyDB for PostgreSQL-Datenbank auf eine Hauptversion auftreten können. Weitere Informationen finden Sie unter Direktes Upgrade der Datenbank-Hauptversion durchführen. Informationen zu Fehlern bei direkten Hauptversions-Upgrades finden Sie unter Fehler bei direkten Hauptversions-Upgrades von Datenbanken.
Um Upgrade-Fehler zu analysieren, ermitteln Sie die fehlgeschlagene Upgrade-Phase aus der Antwort und verwenden Sie die Informationen in diesem Dokument, um mögliche Lösungen zu finden.
AlloyDB validiert Ihre Anfrage synchron und gibt eine Fehlermeldung zurück, wenn eine der folgenden Bedingungen zutrifft:
- Die Anfrage ist ungültig. Das kann beispielsweise der Fall sein, wenn die angegebene Zielhauptversion nicht unterstützt wird oder kleiner oder gleich der aktuellen Hauptversion ist.
- Die Clusterressourcen befinden sich in einem Zustand, in dem das Upgrade der Hauptversion nicht ausgelöst werden kann. Das kann beispielsweise der Fall sein, wenn sich der Cluster oder eine der zugehörigen Instanzen nicht im Status
READY
befindet.
Wenn die Anfrage gültig ist, kann die Umstellung aus folgenden Gründen fehlschlagen:
- Vorabprüfungen, die in verschiedenen Phasen durchgeführt werden, können fehlschlagen. Das bedeutet, dass Verstöße erkannt wurden. Sie müssen diese Verstöße beheben, bevor Sie das Upgrade neu starten.
- Bei internen Fehlern müssen Sie das Upgrade noch einmal versuchen. Wenn die Wiederholungsversuche fehlschlagen, wenden Sie sich an den Google Cloud-Support.
Fehler bei der Prüfung vor dem Upgrade von AlloyDB
Fehler bei der Prüfung vor dem Upgrade können in jeder der folgenden Phasen auftreten:
- AlloyDB-Prüfungen vor dem Upgrade (
ALLOYDB_PRECHECK
) pg_upgrade
Prüfungen (PG_UPGRADE_CHECK
)- Upgrades des primären Clusters (
PRIMARY_INSTANCE_UPGRADE
)
Fehler bei der Prüfung vor dem Upgrade sind Probleme, die AlloyDB während der Validierungsphase vor dem Upgrade erkennt und die dazu führen können, dass das direkte Upgrade der Hauptversion fehlschlägt. AlloyDB prüft beispielsweise auf Inkompatibilitäten zwischen der aktuellen und der Zielhauptversion.
Fehlermeldungen werden in der Antwort des Upgradevorgangs in logs_url
ausgegeben. Sie können sich diese Logs ansehen, indem Sie in der Google Cloud Console zum Log-Explorer gehen. Weitere Informationen finden Sie unter Upgrade-Logs ansehen.
Informationen zu den Fehlern und den entsprechenden Fehlermeldungen, die in den Logs angezeigt werden können, finden Sie unter Fehler beim direkten Upgrade der Datenbank-Hauptversion.
Das Folgende ist ein Beispiel für die Zusammenfassung, die in den Logs durch AlloyDB-Prüfungen vor dem Upgrade generiert wird:
Total number of databases checked for custom checks: 3 Total number of databases containing pg_largeobject: 0 Total number of databases containing event triggers permissions issue: 0 Total number of databases containing extensions compatibility violation: 1 Total number of databases containing search path violations: 0
Fehler bei pg_upgrade-Prüfungen
Mit PG_UPGRADE_CHECK
wird mit dem Standarddienstprogramm pg_upgrade
nach Verstößen gesucht. Diese Upgrade-Prüfung umfasst Dateninkonsistenzen, die sich aus verschiedenen Faktoren ergeben, einschließlich Unterschiede bei versionsspezifischen Datenstrukturen, Änderungen bei der Codierung und Sortierung, Änderungen an Datentypen und Anpassungen am Systemkatalog.
Mehrere Dateien, z. B. tables_with_oids.txt
und tables_using_reg.txt
, die während pg_upgrade
generiert werden, werden in die Logdatei postgres_upgrade
exportiert. Sie können diese Dateien mit dem Label labels.FILE_NAME
filtern.
Folgende Dateinamen enthalten möglicherweise Fehler, die behoben werden sollten:
Dateiname | Beschreibung |
---|---|
|
Diese Datei enthält Tabellen, die mit Objekt-IDs (OIDs) aufgeführt sind. Löschen Sie die Tabellen oder ändern Sie sie so, dass sie keine OIDs verwenden. |
|
Diese Datei enthält Tabellen, die mit vom System definierten zusammengesetzten Typen aufgelistet werden. Löschen Sie die Tabellen oder ändern Sie sie so, dass sie diese zusammengesetzten Typen nicht verwenden. |
|
Diese Datei enthält Tabellen, die mit dem Datentyp UNKNOWN aufgelistet werden. Löschen Sie die Tabellen oder ändern Sie sie so, dass sie diesen Datentyp nicht verwenden. |
|
Diese Datei enthält Tabellen, die mit dem Datentyp SQL_IDENTIFIER aufgelistet werden. Löschen Sie die Tabellen oder ändern Sie sie so, dass sie diesen Datentyp nicht verwenden. |
|
Diese Datei enthält Tabellen, die mithilfe des Datentyps REG* aufgelistet werden, z. B. REGCOLLATION oder REGNAMESPACE . Löschen Sie die Tabellen oder ändern Sie sie so, dass sie diesen Datentyp nicht verwenden. |
|
Diese Datei enthält Tabellen, die mit postfix -Operatoren (rechts-unär) aufgelistet sind. Löschen Sie die Tabellen oder ändern Sie sie so, dass sie diese Operatoren nicht verwenden. |
Fehler bei pg_upgrade
Die Struktur von PG_UPGRADE
-Logs ähnelt der Struktur von PG_UPGRADE_CHECK
-Logs.
Das folgende Beispiel zeigt ein Protokoll mit dem Label labels.FILE_NAME=pg_upgrade_dump*.log:
:
pg_upgrade_dump: error: query failed: ERROR: out of shared memory HINT: You might need to increase max_locks_per_transaction.
Nächste Schritte
- Informationen zu Fehlern bei direkten Hauptversions-Upgrades von Datenbanken
- Informationen zum direkten Upgrade der Datenbank-Hauptversion