全部产品
Search
文档中心

Data Management:Mengumpulkan kembali fragmen tablespace

更新时间:Jul 02, 2025

Jika pernyataan INSERT, UPDATE, dan DELETE sering dieksekusi di database MySQL, data tidak lagi tersimpan secara berkelanjutan di disk, sehingga menyebabkan terbentuknya fragmen tablespace. Fragmen ini dapat menurunkan performa database. Operasi umum seperti menjalankan OPTIMIZE TABLE untuk mendefragmentasi ruang dapat mengunci tabel dan memengaruhi bisnis. Fitur perubahan skema tanpa kunci dari Data Management (DMS) memungkinkan pengumpulan kembali fragmen tablespace secara otomatis tanpa mengunci tabel, meningkatkan performa dan efisiensi database serta mengurangi biaya penyimpanan. Topik ini menjelaskan cara mengirim Tiket perubahan skema tanpa kunci di DMS untuk mendefragmentasi ruang secara otomatis.

Prasyarat

Catatan penggunaan

Sebelum mendefragmentasi ruang pada tabel besar, pastikan ruang penyimpanan tersisa di instance database setidaknya dua kali ukuran tabel tersebut. Pantau dengan cermat ruang penyimpanan selama proses perubahan database.

Penting
  • Saat mendefragmentasi ruang pada tabel besar, Anda mungkin memerlukan salinan sementara untuk menyimpan data, yang membutuhkan ruang tambahan. Jika ruang penyimpanan tidak mencukupi, DMS mungkin gagal melakukan defragmentasi atau instance database dapat terkunci.

  • DMS melakukan defragmentasi ruang dengan mengeksekusi pernyataan DDL untuk mengubah skema tanpa mengunci tabel. Namun, tingkat keberhasilan eksekusi pernyataan ini tidak dapat mencapai 100%.

Lihat ukuran fragmen tablespace

Masuk ke instance database MySQL di Konsol DMS. Di tab SQLConsole, eksekusi pernyataan SHOW TABLE STATUS LIKE 'table_name'; untuk melihat ukuran fragmen tablespace. Untuk informasi lebih lanjut tentang cara menanyakan data di tab SQLConsole, lihat Ikhtisar.

Gambar berikut menunjukkan contoh hasil kueri. Parameter Data_free menunjukkan ukuran fragmen tablespace dalam tabel, dengan satuan byte.

image.png

Prosedur

  1. Masuk ke Konsol DMS V5.0.
  2. Di bilah navigasi atas, pilih Database Development > Data Change > Lock-free Change.

    Catatan

    Jika Anda menggunakan Konsol DMS dalam mode sederhana, klik ikon 2022-10-21_15-25-22..png di pojok kiri atas dan pilih All functions > Database Development > Data Change > Lock-free Change.

  3. Konfigurasikan Tiket perubahan skema tanpa kunci. Untuk informasi lebih lanjut, lihat Melakukan Operasi DDL Tanpa Kunci.

    Setelah fitur perubahan skema tanpa kunci diaktifkan untuk instance database, DMS secara otomatis akan mendefragmentasi ruang setiap kali Anda mengirim Tiket perubahan skema tanpa kunci. Untuk memastikan stabilitas proses dan mengurangi dampak pada tabel lain yang bergantung atau terkait, gunakan salah satu pernyataan SQL berikut dalam tiket:

    • ALTER TABLE table_name COMMENT 'Komentar tabel yang dimodifikasi';

    • ALTER TABLE table_name ENGINE=InnoDB;

    • OPTIMIZE TABLE table_name;

    • ALTER TABLE table_name MODIFY COLUMN field_name INT COMMENT 'Komentar bidang yang dimodifikasi';