Dokumen ini menjelaskan cara memecahkan masalah yang mungkin Anda alami saat mengupgrade database AlloyDB untuk PostgreSQL ke versi utama di tempat. Untuk informasi selengkapnya, lihat Mengupgrade versi utama database yang sudah diterapkan. Untuk mempelajari error upgrade versi utama langsung, lihat Error upgrade versi utama langsung database.
Untuk menganalisis kegagalan upgrade, identifikasi tahap upgrade yang gagal dari respons dan gunakan informasi dalam dokumen ini untuk mengidentifikasi kemungkinan resolusi.
AlloyDB memvalidasi permintaan Anda secara sinkron dan menampilkan pesan error jika salah satu hal berikut terjadi:
- Permintaan tidak valid. Misalnya, jika versi utama target yang diberikan tidak didukung atau kurang dari atau sama dengan versi utama saat ini.
- Resource cluster berada dalam status yang tidak memungkinkan upgrade versi utama dipicu. Misalnya, jika cluster atau instance terkait tidak dalam status
READY
.
Jika permintaan valid, upgrade mungkin gagal karena alasan berikut:
- Pemeriksaan pra-upgrade yang dilakukan pada berbagai tahap dapat gagal, yang menunjukkan bahwa pelanggaran terdeteksi. Anda harus mengatasi pelanggaran ini sebelum memulai ulang upgrade.
- Error internal berarti Anda perlu mencoba lagi upgrade. Jika percobaan ulang gagal, hubungi Dukungan Google Cloud.
Kegagalan pemeriksaan pra-upgrade AlloyDB
Kegagalan pemeriksaan pra-upgrade dapat terjadi selama salah satu tahap berikut:
- Pemeriksaan pra-upgrade AlloyDB (
ALLOYDB_PRECHECK
) - Pemeriksaan
pg_upgrade
(PG_UPGRADE_CHECK
) - Upgrade cluster utama (
PRIMARY_INSTANCE_UPGRADE
)
Kegagalan pemeriksaan pra-upgrade adalah masalah yang dideteksi AlloyDB selama fase validasi pra-upgrade, yang dapat menyebabkan upgrade versi utama di tempat gagal. Misalnya, AlloyDB memeriksa inkompatibilitas ekstensi antara versi utama saat ini dan target.
Pesan error diisi di logs_url
dalam respons operasi upgrade. Anda dapat melihat log ini dengan membuka Logs Explorer di konsol Google Cloud . Untuk mengetahui informasi selengkapnya, lihat
Melihat log upgrade.
Untuk melihat kegagalan dan pesan error terkait yang mungkin Anda lihat di log, lihat Error upgrade versi utama database yang diterapkan.
Berikut adalah contoh ringkasan yang dihasilkan di log oleh pemeriksaan pra-upgrade AlloyDB:
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
Kegagalan pemeriksaan pg_upgrade
PG_UPGRADE_CHECK
memeriksa pelanggaran menggunakan utilitas pg_upgrade
standar. Pemeriksaan upgrade ini mencakup inkonsistensi data yang muncul dari
berbagai faktor, termasuk perbedaan dalam struktur data khusus versi,
perubahan dalam encoding dan kolasi, modifikasi pada jenis data, dan
penyesuaian pada katalog sistem.
Beberapa file, seperti tables_with_oids.txt
dan tables_using_reg.txt
, yang dibuat selama pg_upgrade
, diekspor ke file log postgres_upgrade
. Anda dapat
memfilter file ini menggunakan label labels.FILE_NAME
.
Nama file yang mungkin berisi error yang perlu diselesaikan meliputi:
Nama file | Deskripsi |
---|---|
|
File ini berisi tabel yang dicantumkan dengan ID objek (OID). Hapus atau ubah tabel agar tidak menggunakan OID. |
|
File ini berisi tabel yang dicantumkan menggunakan jenis komposit yang ditentukan sistem. Hapus atau ubah tabel agar tidak menggunakan jenis komposit ini. |
|
File ini berisi tabel yang dicantumkan menggunakan
jenis data UNKNOWN . Hapus atau ubah tabel agar tidak menggunakan jenis data ini. |
|
File ini berisi tabel yang dicantumkan menggunakan
jenis data SQL_IDENTIFIER . Hapus atau ubah tabel agar tidak menggunakan jenis data ini. |
|
File ini berisi tabel yang dicantumkan menggunakan jenis data REG* , misalnya, REGCOLLATION atau REGNAMESPACE . Hapus atau ubah tabel agar tidak menggunakan jenis data ini. |
|
File ini berisi tabel yang dicantumkan menggunakan operator postfix
(unary kanan). Hapus atau ubah tabel agar
tidak menggunakan operator ini. |
Kegagalan pg_upgrade
Struktur log PG_UPGRADE
mirip dengan struktur log
PG_UPGRADE_CHECK
.
Berikut adalah contoh log dengan 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.
Langkah berikutnya
- Pelajari error upgrade versi utama database secara langsung.
- Pelajari cara melakukan upgrade versi utama database secara langsung.