Jika Anda tidak menghapus file data pada instance ApsaraDB RDS for MySQL dalam waktu lama, kapasitas penyimpanan instance RDS mungkin akan habis. Akibatnya, instance RDS akan otomatis terkunci untuk mencegah kehilangan data, dan Anda tidak dapat menulis data ke instance RDS.
Deskripsi masalah
Sejumlah besar data ditulis ke instance RDS Anda. Akibatnya, kapasitas penyimpanan instance RDS habis oleh file data, dan instance RDS memasuki status Locked.
Penyebab
Kapasitas penyimpanan instance RDS habis oleh file data yang disimpan dalam waktu lama. Dalam kasus ini, instance RDS secara otomatis terkunci untuk mencegah kehilangan data, dan Anda tidak dapat menulis data ke instance RDS.
Solusi
Prasyarat
Jika instance RDS Anda menjalankan MySQL 5.6, MySQL 5.7, atau MySQL 8.0, versi mesin minor dari instance RDS harus 20190815 atau lebih baru. Jika versi mesin minor instance RDS Anda lebih lama dari 20190815, Anda harus memperbarui versi mesin minor sebelum menghapus file data. Untuk informasi lebih lanjut, lihat Perbarui versi mesin minor. 

Catatan penggunaan
- Sebelum menghapus tabel, pastikan bahwa data tabel telah dicadangkan untuk mencegah kehilangan data.
- Jika Anda menggunakan instance ApsaraDB RDS for MySQL, Anda tidak dapat mengeksekusi pernyataan
DELETEuntuk melepaskan penyimpanan instance RDS. Kami merekomendasikan agar Anda mengeksekusi pernyataanDROPatauTRUNCATEuntuk melepaskan penyimpanan instance RDS. - Jika Anda mengeksekusi pernyataan
OPTIMIZEpada sebuah tabel, tabel tersebut akan terkunci. Kami merekomendasikan agar Anda mengeksekusi pernyataan OPTIMIZE selama jam-jam sepi. - Setelah file data dihapus, diperlukan waktu untuk melepaskan penyimpanan instance RDS Anda.
- Setelah file data dihapus, ApsaraDB RDS membuka kunci instance RDS Anda dalam waktu sekitar 5 menit.
Prosedur
Anda dapat menggunakan salah satu metode berikut untuk menyelesaikan masalah:
- Perluas kapasitas penyimpanan instance RDS.Anda dapat memperluas kapasitas penyimpanan instance RDS Anda. Untuk informasi lebih lanjut, lihat Ubah spesifikasi instance.Catatan Setelah spesifikasi instance RDS Anda diubah, ApsaraDB RDS membuka kunci instance RDS Anda dalam waktu sekitar 5 menit.
- Hapus data historis atau tidak diperlukan.
- Gunakan Data Management (DMS) untuk terhubung ke instance RDS Anda. Untuk informasi lebih lanjut, lihat Gunakan DMS untuk masuk ke instance ApsaraDB RDS for MySQL.
- Pada tab SQL Console, eksekusi pernyataan berikut untuk melihat ukuran file data dan mengidentifikasi file data yang berisi data historis atau data yang tidak diperlukan:
SELECT file_name, concat(TOTAL_EXTENTS,'M') as 'FIle_size' FROM INFORMATION_SCHEMA.FILES order by TOTAL_EXTENTS DESC - Eksekusi pernyataan
DROPatauTRUNCATEuntuk menghapus data historis atau tidak diperlukan.Catatan Setelah penghapusan selesai, ApsaraDB RDS membuka kunci instance RDS Anda dalam waktu sekitar 5 menit.- DROP: Eksekusi pernyataan
DROP TABLE <Database name>.<Table name>untuk menghapus tabel. - TRUNCATE: Eksekusi pernyataan
TRUNCATE TABLE <Database name>.<Table name>untuk menghapus catatan data dari tabel.
- DROP: Eksekusi pernyataan
Apa yang harus dilakukan selanjutnya
Jika instance RDS dibuka kuncinya, lakukan operasi berikut untuk mencegah instance RDS terkunci lagi:
- Konfigurasikan ekspansi penyimpanan otomatis untuk instance RDS. Jika penggunaan penyimpanan instance RDS mencapai ambang batas, ApsaraDB RDS secara otomatis memperluas kapasitas penyimpanan instance RDS. Untuk informasi lebih lanjut, lihat Konfigurasikan ekspansi penyimpanan otomatis.
- Jika pernyataan
DELETEsering dieksekusi pada beberapa tabel, tabel-tabel tersebut menjadi terfragmentasi. Dalam kasus ini, eksekusi pernyataanOPTIMIZE TABLE <Database name>.<Table name>untuk mereklaim penyimpanan selama jam-jam sepi. Untuk informasi lebih lanjut, lihat Bagaimana cara menggunakan pernyataan OPTIMIZE TABLE untuk melepaskan tablespace instance ApsaraDB RDS for MySQL?