全部产品
Search
文档中心

ApsaraDB RDS:Laporan Pemeriksaan untuk Peningkatan Versi Mesin Utama

更新时间:Nov 10, 2025

Topik ini menjelaskan pesan kesalahan umum yang muncul selama pemeriksaan awal untuk peningkatan versi utama instans ApsaraDB RDS for MySQL, termasuk detail setiap item pemeriksaan, kemungkinan penyebab kesalahan, dan solusi.

Tabel berikut menjelaskan pesan kesalahan umum. Jika Anda menemukan pesan kesalahan lain, Anda dapat mengajukan tiket.

Item Pemeriksaan

Pesan Kesalahan

Periksa Konten

Kemungkinan Penyebab

Solusi

check_ins_major_version

Versi mesin saat ini tidak mendukung operasi ini.

Memeriksa apakah versi instans saat ini memenuhi prasyarat untuk peningkatan versi utama.

Versi instans bukan MySQL 5.6 atau MySQL 5.7. Jalur peningkatan bukan dari MySQL 5.6 ke MySQL 5.7 atau dari MySQL 5.7 ke MySQL 8.0.

Untuk informasi lebih lanjut, lihat Prasyarat untuk peningkatan versi utama.

check_ins

Instans yang ditentukan tidak ada atau tidak didukung.

Memeriksa apakah instans saat ini ada.

Instans tidak ada atau telah dihapus.

Verifikasi bahwa instans ada. Anda harus melakukan pemeriksaan pada instans ApsaraDB RDS for MySQL yang ada.

check_ins_status

Status instans DB saat ini tidak mendukung operasi ini.

Memeriksa apakah instans dalam status Berjalan.

Instans tidak dalam status Berjalan karena operasi lain seperti restart instans atau pembuatan koneksi jaringan sedang berlangsung.

Tunggu tugas saat ini selesai. Setelah status instans berubah menjadi Berjalan, mulai ulang pemeriksaan peningkatan versi utama.

check_master_ins

Jenis instans DB saat ini tidak mendukung operasi ini.

Memeriksa apakah instans yang akan ditingkatkan adalah instans utama.

Instans yang akan ditingkatkan adalah instans pemulihan bencana atau instans hanya baca.

Pastikan bahwa instans yang akan ditingkatkan adalah instans utama.

check_ins_locked_state

Mode penguncian instans DB saat ini tidak mendukung operasi ini.

Memeriksa apakah instans terkunci.

Instans dalam status Terkunci.

Buka kunci instans. Tunggu hingga status instans berubah menjadi Berjalan, lalu lakukan pemeriksaan peningkatan lagi. Untuk informasi lebih lanjut, lihat Apa yang harus saya lakukan jika instans saya dalam status Terkunci?

check_maxscale_kernel

Versi Maxscale instans terlalu rendah. Tingkatkan versi Maxscale terlebih dahulu.

Memeriksa apakah versi minor proksi database didukung.

Instans menggunakan proksi, dan versi minor proksi lebih awal dari 1.13.41.

Pertama, tingkatkan versi minor proksi ke versi yang didukung, lalu tingkatkan versi database.

check_ins_tde_state

Instans ini tidak dikonfigurasikan dengan status TDE yang ditentukan.

Memeriksa apakah enkripsi data transparan (TDE) diaktifkan untuk instans saat ini.

TDE diaktifkan untuk instans.

Jika TDE diaktifkan untuk instans, Anda tidak dapat langsung meningkatkan versi utama di konsol. Untuk informasi lebih lanjut, lihat Tingkatkan versi database.

check_target_ins_level

Kelas instans DB saat ini tidak mendukung operasi ini.

(Kode kesalahan: InvalidInstanceLevel.Malformed)

Memeriksa apakah jenis instans saat ini tersedia untuk dibeli.

Versi utama tidak dapat ditingkatkan secara langsung karena jenis instans saat ini adalah jenis instans yang sudah tidak digunakan.

Anda tidak dapat langsung meningkatkan versi utama instans yang menggunakan jenis instans yang sudah tidak digunakan. Anda harus terlebih dahulu mengubah instans ke jenis instans yang tersedia saat ini, lalu tingkatkan versi database.

check_target_read_level

Kelas instans hanya baca tidak didukung di instans target.

Memeriksa apakah jenis instans instans hanya baca saat ini tersedia untuk dibeli.

Jenis instans instans hanya baca sudah tidak digunakan.

Instans menggunakan SSD lokal. Anda harus mengubah instans hanya baca saat ini ke jenis instans yang tersedia, lalu lakukan pemeriksaan lagi.

check_upgrade_check_task

Tugas sudah ada.

Memeriksa apakah tugas pemeriksaan awal peningkatan versi utama sudah ada untuk instans saat ini.

Tugas pemeriksaan awal peningkatan versi utama sedang berlangsung untuk instans saat ini.

Tunggu tugas pemeriksaan selesai. Setelah status instans berubah menjadi Berjalan, lakukan pemeriksaan lagi.

check_upgrade_task

Tugas sudah ada.

Memeriksa apakah tugas peningkatan versi utama sudah ada untuk instans saat ini.

Tugas peningkatan versi utama sedang berlangsung untuk instans saat ini.

Tunggu tugas peningkatan versi utama selesai. Setelah status instans berubah menjadi Berjalan, lakukan pemeriksaan lagi.

check_storage_type

SSD standar tidak mendukung operasi ini. Harap tingkatkan ke ESSD.

Memeriksa apakah instans saat ini menggunakan SSD standar.

Instans saat ini menggunakan SSD standar.

Pertama, tingkatkan tipe penyimpanan ke SSD perusahaan (ESSD).

check_source_category

Kategori sumber yang ditentukan tidak valid.

Memeriksa edisi instans saat ini.

Instans saat ini bukan pada Edisi Dasar atau Edisi Ketersediaan Tinggi.

Pemeriksaan peningkatan tidak didukung untuk instans yang tidak pada Edisi Ketersediaan Tinggi atau Edisi Dasar.

check_ins_biz_type

Jenis bisnis yang ditentukan tidak valid.

Memeriksa apakah instans saat ini adalah instans cloud publik.

Instans saat ini bukan instans cloud publik.

Saat ini, pemeriksaan peningkatan hanya didukung untuk instans cloud publik.

check_ins_tables_number

Peningkatan tidak diizinkan karena jumlah tabel yang berlebihan: lebih dari 1.000.000.

atau

Peningkatan tidak diizinkan karena jumlah tabel yang berlebihan: lebih dari 1.000.0000.

Memeriksa jumlah tabel data di instans.

  • Jumlah tabel data pada instans yang menggunakan SSD lokal melebihi 1.000.000.

  • Jumlah tabel data pada instans yang menggunakan disk cloud melebihi 1.000.000.

Hapus tabel data yang berlebih sebelum Anda melakukan pemeriksaan peningkatan.

check_ins_db_engine

Instans berisi tabel yang menggunakan mesin MyISAM, Memory, TokuDB, Sphinx, atau RocksDB.

Memeriksa apakah basis data instans berisi tabel yang menggunakan mesin MyISAM, Memory, TokuDB, Sphinx, atau RocksDB.

Basis data instans berisi tabel yang menggunakan mesin MyISAM, Memory, TokuDB, Sphinx, atau RocksDB. Peningkatan tidak didukung untuk mesin-mesin ini.

Pertama, ubah mesin tabel ke mesin InnoDB. Jika basis data Anda sudah menggunakan mesin InnoDB tetapi beberapa tabel masih menggunakan mesin lain, jalankan perintah ALTER TABLE <table_name> engine=InnoDB; untuk mengubah tabel ke mesin InnoDB sebelum Anda meningkatkan.

check_ins_fts

Instans saat ini memiliki indeks teks penuh, dan versi minornya lebih awal dari 20221130.

Memeriksa apakah basis data instans memiliki indeks teks penuh dan apakah versi minornya lebih awal dari 20221130.

  • Pada versi MySQL yang lebih lama, indeks teks penuh mungkin dibuat pada ruang tabel sistem. Selama peningkatan versi utama, indeks ini dapat menyebabkan korupsi ruang tabel. Untuk mencegah korupsi data, Anda harus menangani indeks ini sebelum peningkatan.

  • Masalah ini diperbaiki di RDS for MySQL 5.6 versi minor 20221130, di mana indeks teks penuh dibuat pada ruang tabel terpisah.

Di RDS for MySQL 5.6, indeks teks penuh dibuat pada ruang tabel sistem. Oleh karena itu, ketika Anda meningkatkan dari RDS for MySQL 5.6 ke RDS for MySQL 5.7, Anda harus membersihkan indeks teks penuh dari ruang tabel sistem terlebih dahulu. Pastikan versi minor instans RDS for MySQL 5.6 Anda adalah 20221130 atau lebih baru. Jika versi Anda lebih awal, pertama-tama tingkatkan ke versi RDS for MySQL 5.6 terbaru.

  1. Berdasarkan nama tabel dalam prompt, hapus indeks teks penuh yang dibuat pada ruang tabel sistem.

    ALTER TABLE $table_name DROP INDEX $fts_name;
  2. Buat ulang indeks teks penuh.

    ALTER TABLE $table_name ADD FULLTEXT INDEX $fts_name;
  3. Setelah indeks dibuat, Anda dapat menjalankan pernyataan SQL berikut untuk memeriksa indeks teks penuh instans saat ini. Pernyataan SQL mengembalikan indeks teks penuh yang dibuat pada ruang tabel sistem. Jika kueri mengembalikan hasil kosong, peningkatan dari RDS for MySQL 5.6 ke RDS for MySQL 5.7 tidak akan gagal karena masalah indeks.

    SELECT NAME FROM information_schema.INNODB_SYS_TABLES WHERE TABLE_ID IN ( SELECT CONV(SUBSTRING_INDEX(SUBSTRING_INDEX(NAME, '_', -4),'_', 1),16,10) FROM INNODB_SYS_TABLES WHERE NAME LIKE '%fts_00000000%' AND SPACE = 0);

check_read_ins_number

Jumlah instance hanya-baca tidak boleh lebih besar dari 8.

Memeriksa bahwa jumlah instans hanya baca yang menggunakan SSD lokal tidak lebih dari 8.

Jumlah instans hanya baca untuk instans saat ini yang menggunakan SSD lokal lebih dari 8.

Lepaskan instans hanya baca ekstra. Anda dapat membuatnya lagi setelah peningkatan selesai.

check_slave_state

Node sekunder tidak sehat atau memiliki latensi replikasi.

Memeriksa status dan informasi latensi node sekunder.

Node sekunder dalam keadaan abnormal atau memiliki latensi replikasi.

Anda dapat melihat metrik pemantauan Node Replication Thread Status (detik) dan Node Replication Latency (detik) di konsol. Tunggu status node sekunder kembali normal, lalu lakukan pemeriksaan lagi.

check_account

Instance memiliki akun aliyun_root.

Anda dapat memeriksa akun.

Pengguna secara manual membuat akun aliyun_root di RDS for MySQL 5.6.

Akun aliyun_root adalah akun default di RDS for MySQL 5.7 dan versi lebih baru. Jika Anda secara manual membuat akun aliyun_root di versi 5.6, kesalahan nama duplikat dilaporkan selama peningkatan ke versi 5.7. Anda harus menghapus atau memodifikasi akun aliyun_root sebelum pemeriksaan peningkatan. Untuk informasi lebih lanjut, lihat Akun sistem.

check_sys_schema

Instance sudah memiliki database sys.

Memeriksa apakah database sys ada di instans.

Database sys ada secara default di RDS for MySQL 5.7. Jika database sys ada di RDS for MySQL 5.6, peningkatan dari 5.6 ke 5.7 gagal.

Jika database sys ada, Anda harus mengganti namanya. Karena MySQL tidak mendukung RENAME DATABASE, Anda harus secara manual menjalankan ALTER TABLE RENAME untuk setiap tabel.

SELECT * FROM information_schema.SCHEMATA WHERE SCHEMA_NAME='sys';

check_table_discard

Instans berisi tabel yang dibuang.

Memeriksa apakah tabel yang dibuang ada di instans. Ini adalah tabel tempat operasi ALTER TABLE discard TABLESPACE dilakukan.

Tabel yang dibuang ada di instans.

Kueri dan hapus tabel yang dibuang.

SELECT space,name FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES WHERE FS_BLOCK_SIZE=0 AND FILE_SIZE=0 AND name NOT LIKE '%#sql%';

check_table_foreign_key

Tabel partisi berisi kunci asing.

Memeriksa apakah tabel partisi di instans berisi kunci asing.

Tabel partisi berisi kunci asing atau dirujuk oleh kunci asing dari tabel lain.

Selesaikan konflik antara kunci asing dan tabel partisi.

  1. Kueri tabel partisi yang berisi kunci asing.

    SELECT DISTINCT a.TABLE_SCHEMA, a.TABLE_NAME
    FROM information_schema.TABLE_CONSTRAINTS a, information_schema.PARTITIONS b
    WHERE a.CONSTRAINT_TYPE='FOREIGN KEY'
    AND a.TABLE_SCHEMA = b.TABLE_SCHEMA
    AND a.TABLE_NAME = b.TABLE_NAME
    AND (b.PARTITION_NAME IS NOT NULL OR b.SUBPARTITION_NAME IS NOT NULL);
  2. Kueri tabel partisi yang dirujuk oleh kunci asing dari tabel lain.

    SELECT DISTINCT a.TABLE_SCHEMA, a.TABLE_NAME, a.REFERENCED_TABLE_SCHEMA, a.REFERENCED_TABLE_NAME
    FROM information_schema.KEY_COLUMN_USAGE a, information_schema.PARTITIONS b
    WHERE a.REFERENCED_TABLE_SCHEMA = b.TABLE_SCHEMA
    AND a.REFERENCED_TABLE_NAME = b.TABLE_NAME
    AND (b.PARTITION_NAME IS NOT NULL OR b.SUBPARTITION_NAME IS NOT NULL);

check_column_length

Satu atau lebih tampilan memiliki nama kolom dengan panjang 64 karakter atau lebih.

Memeriksa tampilan yang memiliki nama kolom dengan panjang 64 karakter atau lebih.

Satu atau lebih tampilan memiliki nama kolom dengan panjang 64 karakter atau lebih. Ini tidak didukung.

Kueri untuk tampilan lalu hapus atau modifikasi panjang nama kolom.

SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME IN (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS) AND CHAR_LENGTH(COLUMN_NAME) >= 64;

check_foreign_key_constraint

Satu atau lebih tabel memiliki nama kendala kunci asing dengan panjang lebih dari 64 karakter.

Memeriksa tabel yang memiliki nama kendala kunci asing dengan panjang lebih dari 64 karakter.

Satu atau lebih tabel memiliki nama kendala kunci asing dengan panjang lebih dari 64 karakter.

Kueri untuk tabel lalu hapus atau modifikasi panjang nama kendala kunci asing.

SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME IN (SELECT LEFT(SUBSTR(ID,INSTR(ID,'/')+1),INSTR(SUBSTR(ID,INSTR(ID,'/')+1),'_ibfk_')-1) FROM INFORMATION_SCHEMA.INNODB_SYS_FOREIGN WHERE CHAR_LENGTH(SUBSTR(ID,INSTR(ID,'/')+1))>64);

check_dictionary_table

Database sistem MySQL 5.7 berisi tabel dengan nama yang bertentangan dengan kamus data MySQL 8.0.

Memeriksa apakah tabel di database sistem MySQL 5.7 memiliki nama yang sama dengan tabel yang digunakan oleh kamus data MySQL 8.0.

Tabel di database sistem MySQL 5.7 memiliki nama yang sama dengan tabel yang digunakan oleh kamus data MySQL 8.0.

Kueri untuk tabel di database sistem MySQL 5.7 yang memiliki nama yang sama dengan tabel yang digunakan oleh kamus data MySQL 8.0. Lalu, hapus atau ubah nama tabel dengan nama yang sama.

SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE LOWER(
TABLE_SCHEMA) = 'mysql' and LOWER(TABLE_NAME) IN
('catalogs', 'character_sets', 'check_constraints', 'collations',
'column_statistics', 'column_type_elements', 'columns',
'dd_properties', 'events', 'foreign_key_column_usage', 'foreign_keys',
'index_column_usage', 'index_partitions', 'index_stats',
'indexes', 'parameter_type_elements', 'parameters', 'resource_groups', 'routines',
'schemata', 'st_spatial_reference_systems',
'table_partition_values', 'table_partitions', 'table_stats', 'tables',
'tablespace_files', 'tablespaces', 'triggers', 'view_routine_usage',
'view_table_usage');

check_ins_health

Node utama instans tidak tersedia.

Memeriksa apakah instans tersedia dengan menguji konektivitasnya.

Sumber daya seperti CPU dan disk sepenuhnya dimanfaatkan.

Anda dapat menggunakan fitur Pemantauan dan peringatan di konsol untuk memeriksa apakah semua metrik pemantauan normal.

check_table_index_type

MySQL 8.0 tidak mendukung indeks BTREE pada tipe data spasial.

Saat meningkatkan ke RDS for MySQL 8.0, item ini memeriksa apakah tipe data spasial di RDS for MySQL 5.7 berisi indeks BTREE.

RDS for MySQL 8.0 tidak mendukung indeks BTREE pada tipe data spasial.

Hapus atau modifikasi indeks yang tidak didukung.

SELECT DISTINCT s.* FROM INFORMATION_SCHEMA.STATISTICS s
INNER JOIN INFORMATION_SCHEMA.COLUMNS c
ON s.TABLE_SCHEMA = c.TABLE_SCHEMA
AND s.TABLE_NAME = c.TABLE_NAME
AND s.COLUMN_NAME = c.COLUMN_NAME
WHERE s.TABLE_SCHEMA NOT IN ('mysql', 'sys')
AND c.DATA_TYPE IN ('GEOMETRY', 'POINT', 'LINESTRING', 'POLYGON', 'MULTIPOINT', 
'MULTILINESTRING', 'MULTIPOLYGON', 'GEOMETRYCOLLECTION')
AND s.INDEX_TYPE = 'BTREE';